Администратору DCImanager

Как изменить сеть, используемую Docker?

ISPSystem

По умолчанию система виртуализации Docker использует для своей работы сети 172.17.0.0/12. Если ваше оборудование использует адреса из этих сетей, вы можете изменить настройки Docker. Это предотвратит возможные сетевые конфликты.

Обратите внимание!

Выполнение действий из этой статьи требует остановки платформы и перезагрузки сервера c DCImanager.

Просмотр информации об используемых сетях


Чтобы узнать какие сети использует Docker:

  1. Запросите список сетей:

    docker network list
    Пример ответа
    NETWORK ID          NAME                          DRIVER              SCOPE
    14a38927e118        bridge                        bridge              local
    b91a38ed491b        dci_auth                      bridge              local
    7bdf76184b18        docker_ipmi_proxy_v2_bridge   bridge              local
    2d9237551d88        etc_default                   bridge              local
    f67c6099ef24        host                          host                local
    cbb6fb4096c5        none                          null                local

    В ответе команды в столбце NAME будут отображены имена используемых сетей.

  2. Запросите информацию об используемом адресном пространстве:

    Пример команд с ответами
    [root@dci ~]# docker network inspect etc_default | grep Subnet
    "Subnet": "172.19.0.0/16",
    [root@dci ~]# docker network inspect docker_ipmi_proxy_v2_bridge | grep Subnet
    "Subnet": "172.26.0.0/16",
    [root@dci ~]# docker network inspect bridge | grep Subnet
    "Subnet": "172.17.0.0/16",
    [root@dci ~]# docker network inspect dci_auth | grep Subnet
    "Subnet": "172.25.0.0/16",

Смена сети для Docker


Чтобы изменить настройки сетей, используемые Docker:

  1. Отредактируйте или создайте файл /etc/docker/daemon.json:

    Пример файла
    {
    	"live-restore": true,
    	"bip": "10.10.0.1/16",
    	"default-address-pools": [{
    		"base": "10.0.0.0/8",
    		"size": 16
    	}]
    }

    live-restore — параметр помогает сократить время простоя контейнеров при выключении или перезагрузке системы.

    bip — IP-адрес bridge-интерфейса Docker в формате "адрес/префикс сети". Например, чтобы использовать IP-адрес 10.10.0.1 в сети 10.10.0.0/16 укажите "10.10.0.1/16".

    base — диапазон IP-адресов для создания сетей Docker в формате "сеть/префикс сети". Например, "10.0.0.0/8".

    size — префикс создаваемых сетей.

  2. Удалите запущенные докер-контейнеры:

    docker rm -f `docker ps -q -a`
  3. Удалите все неиспользуемые объекты Docker:

    docker system prune
  4. Запустите DCImanager:

    dci start
  5. Запустите докер-контейнеры модуля проксирования BMC:

    docker-compose -f /opt/ispsystem/ipmi_proxy_service/etc/docker/ipmi_proxy_v2.yml up -d
  6. Запустите докер-контейнеры для работы с локациями:

    docker-compose -f /opt/ispsystem/dci/etc/location.yaml up -d
  7. Перезагрузите сервер с DCImanager:

    reboot
  8. Проверьте настройки сетей:

    Примеры команд с ответами
    [root@dci6 ~]# docker network inspect bridge | grep Subnet
    "Subnet": "10.10.0.0/16",
    [root@dci6 ~]# docker network inspect dci_auth | grep Subnet
    "Subnet": "10.0.0.0/16",
    [root@dci6 ~]# docker network inspect docker_ipmi_proxy_v2_bridge | grep Subnet
    "Subnet": "10.1.0.0/16",
    [root@dci6 ~]# docker network inspect etc_default | grep Subnet
    "Subnet": "10.2.0.0/16",
Спасибо за ваш отзыв!
Была ли полезна статья?
Уточните, почему:

статья не соответствует названию

статью сложно понять

в статье нет ответа на мой вопрос

рекомендации из статьи не помогли

другая причина

Расскажите, что вам не понравилось в статье: