Docker compose создает сеть с разными подсетями каждый раз - PullRequest
0 голосов
/ 08 января 2019

У меня есть простой файл yaml, который запускает два контейнера: JBoss и Postgres. Когда я бегу:

docker-compose -f compose-application.yaml up -d

создана новая сеть - это то, чего я ожидаю. Тем не менее, когда я останавливаю контейнеры с:

docker-compose -f compose-application.yaml down

и запустите их еще раз, тогда сеть получит новую подсеть (увеличена на 1). Когда повторный запуск повторяется несколько раз, назначенная подсеть конфликтует с уже существующей (проблема с маршрутизацией и т.

Я знаю, что могу указать подсеть, которая должна использоваться внутри yaml. Однако я попытался запустить это на другой машине (Docker для Windows 7), и там эта сеть каждый раз получает одну и ту же подсеть.

Я использую версию докера:

docker version
Client:
Version:           18.06.1-ce
API version:       1.38
Go version:        go1.10.3
Git commit:        e68fc7a
Built:             Tue Aug 21 17:23:03 2018
OS/Arch:           linux/amd64
Experimental:      false

Server:
Engine:
  Version:          18.06.1-ce
  API version:      1.38 (minimum version 1.12)
  Go version:       go1.10.3
  Git commit:       e68fc7a
  Built:            Tue Aug 21 17:25:29 2018
  OS/Arch:          linux/amd64
  Experimental:     false

и докер составляют:

docker-compose version
docker-compose version 1.23.1, build b02f1306
docker-py version: 3.5.0
CPython version: 3.6.7
OpenSSL version: OpenSSL 1.1.0f  25 May 2017

1 Ответ

0 голосов
/ 09 января 2019

Я не знаю, почему это работает по-другому в Windows 7, но я могу себе представить, что это потому, что сама машина Docker.

Я думаю, что лучшее решение - это действительно определить сеть в файле docker-compose yml. Примерно так:

  networks:
    network_name:
      name: NETWORK_NAME
      driver: bridge
      ipam:
        config:
          - subnet: SUBNET
...