Skip to main content

Конфликт адресов Docker при установке

Симптомы

  • После установки системы Принтум происходит разрыв соединения с сервером.
  • Подключение по SSH становится недоступным сразу после установки или при первом запуске контейнеров.

Возможные причины

Конфликт IP-адресов между внутренней сетью Docker и реальной локальной сетью. Для работы Принтум используется внутренняя сеть Docker с пулом адресов:

10.28.32.0/26

Если данный диапазон пересекается с адресным пространством инфраструктуры — необходимо выделить другой пул адресов для Docker.

Когда может возникнуть проблема

  • Во время установки системы.
  • Сразу после установки.
  • При первом запуске контейнеров.

Диагностика

Если подключение по SSH недоступно — подключитесь к серверу через консоль гипервизора (vSphere / Proxmox / Hyper-V и т.д.).


Решение

  1. Остановите контейнеры Принтум

Если установлен Мониторинг:

cd /opt/printum
docker-compose down

Если установлен ПринтМенеджер:

cd /opt/printmanager
docker-compose down
  1. Проверьте наличие файла конфигурации Docker

Проверьте, существует ли файл /etc/docker/daemon.json. Если файла нет — создайте его:

sudo nano /etc/docker/daemon.json
  1. Укажите новый пул IP-адресов Docker

Добавьте или отредактируйте содержимое файла:

{
  "default-address-pools": [
    {
      "base": "x.x.x.x/x",
      "size": 26
    }
  ]
}
  • "base" — выделенный диапазон IP-адресов, который не пересекается с локальной сетью.
  • "size": 26 — размер подсети (изменять не требуется).

Используйте только свободный диапазон, согласованный с сетевым администратором. Сохраните файл и выйдите из редактора.

  1. Перезапустите службу Docker
sudo systemctl restart docker
  1. Запустите контейнеры Принтум

Если установлен Мониторинг:

cd /opt/printum
docker-compose up -d

Если установлен ПринтМенеджер:

cd /opt/printmanager
docker-compose up -d
  1. Проверьте адреса контейнеров
sudo docker ps -q | sudo xargs -n 1 docker inspect -f '{{ .Name }}: {{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}'

Ошибка при запуске контейнеров

ERROR: could not find an available, non-overlapping IPv4 address pool among the defaults to assign to the network

Причина: выбранный диапазон адресов также пересекается с существующими сетями.
Решение: вернитесь к шагу 3 и укажите другой диапазон IP-адресов.


Если конфликт известен до установки

Если известно, что адресное пространство 10.28.32.0/26 конфликтует с вашей сетью до установки системы — выполните инструкцию, игнорируя шаги 1 и 5 (остановку и повторный запуск контейнеров). Настройка пула выполняется до первого запуска системы.


Что проверить перед эскалацией

  • Выбранный диапазон не пересекается с другими подсетями (проверить с сетевым администратором).
  • Файл /etc/docker/daemon.json сохранён корректно (валидный JSON).
  • Служба Docker перезапущена после изменения конфигурации.
  • IP-адреса контейнеров принадлежат новому пулу (шаг 6).