База знаний VMmanager

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

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

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

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

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

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

    docker network list
    Пример ответа
    NETWORK ID     NAME            DRIVER    SCOPE
    d6d21035109b   bridge          bridge    local
    5ce30744fbb4   host            host      local
    d20b27b805a0   none            null      local
    21e7a8920b7f   vm_vm_box_net   bridge    local

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

  2. Для каждой сети запросите информацию об используемом адресном пространстве:

    docker network inspect <network_name> | grep Subnet
    Пояснения к команде

Смена сети для 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
    	}]
    }
    Пояснения к формату файла
  2. Удалите запущенные докер-контейнеры:

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

    docker system prune
    docker network prune
  4. Перезапустите службу Docker: 

    systemctl restart docker
  5. Запустите VMmanager:

    vm start
  6. Перезагрузите сервер с VMmanager:

    reboot
  7. Для каждой сети запросите информацию об используемом адресном пространстве:

    docker network inspect <network_name> | grep Subnet
    Пояснения к команде