Size: a a a

RU.Docker — Официальное Русское Сообщество

2019 September 17

c

corsars in RU.Docker — Официальное Русское Сообщество
Вот блин - не в тот чат сорри 🙊
источник
2019 September 18

kk

karser karser in RU.Docker — Официальное Русское Сообщество
Всем привет. Подскажите, плиз: есть сервер, на котором развернута куча docker-compose проектов. Все они смотрят в веб через bridge network "webproxy" и traefik.
Сейчас пытаюсь развернуть docker swarm stack. Команда docker swarm init прошла успешно, но возникает проблема, как этому стэку смотреть в веб?
Я пытался использовать существующую bridge network "webproxy", но получил ошибку network "webproxy" is declared as external, but it is not in the right scope: "local" instead of "swarm". Т.е для swarm нужен overlay сеть.
Я вижу 2 варианта: Первый, это пересоздать сеть webproxy с типом overlay, но смогут ли с ним работать docker-compose проекты? Или их тоже надо будет деплоить через swarm?
Второй вариант - создам еще одну сеть, т.е будут обе сети, overlay и bridge. Но в этом случае, как их завязать на traefik? Он работает только с одной сетью, насколько я знаю.
источник

c

corsars in RU.Docker — Официальное Русское Сообщество
karser karser
Всем привет. Подскажите, плиз: есть сервер, на котором развернута куча docker-compose проектов. Все они смотрят в веб через bridge network "webproxy" и traefik.
Сейчас пытаюсь развернуть docker swarm stack. Команда docker swarm init прошла успешно, но возникает проблема, как этому стэку смотреть в веб?
Я пытался использовать существующую bridge network "webproxy", но получил ошибку network "webproxy" is declared as external, but it is not in the right scope: "local" instead of "swarm". Т.е для swarm нужен overlay сеть.
Я вижу 2 варианта: Первый, это пересоздать сеть webproxy с типом overlay, но смогут ли с ним работать docker-compose проекты? Или их тоже надо будет деплоить через swarm?
Второй вариант - создам еще одну сеть, т.е будут обе сети, overlay и bridge. Но в этом случае, как их завязать на traefik? Он работает только с одной сетью, насколько я знаю.
а что в etcd понаписано ?
источник

kk

karser karser in RU.Docker — Официальное Русское Сообщество
corsars
а что в etcd понаписано ?
не совсем понимаю что это. а как посмотреть?
источник

kk

karser karser in RU.Docker — Официальное Русское Сообщество
docker network inspect webproxy 
[
   {
       "Name": "webproxy",
       "Id": "710b4b4158f59b6bfd97ae5692bb6d5ea747591e18a8b31a8f15e190421df139",
       "Created": "2019-03-12T18:38:58.759488962Z",
       "Scope": "local",
       "Driver": "bridge",
       "EnableIPv6": false,
       "IPAM": {
           "Driver": "default",
           "Options": {},
           "Config": [
               {
                   "Subnet": "172.18.0.0/16",
                   "Gateway": "172.18.0.1"
               }
           ]
       },
       "Internal": false,
       "Attachable": false,
       "Ingress": false,
       "ConfigFrom": {
           "Network": ""
       },
       "ConfigOnly": false,
       "Containers": { ... }
   }
]
источник

c

corsars in RU.Docker — Официальное Русское Сообщество
Так - бридж да есть  "Driver": "bridge",
источник

c

corsars in RU.Docker — Официальное Русское Сообщество
А почему он у тебя как внешний ? "network "webproxy" is declared as external" а внутри сидит ? Внутреняя сеть у тебя  172.18.0.0/16 ?
источник

c

corsars in RU.Docker — Официальное Русское Сообщество
Да еще "Ingress": false а объявлен как внутренний.
источник

kk

karser karser in RU.Docker — Официальное Русское Сообщество
я его создавал через docker network create webproxy
источник

kk

karser karser in RU.Docker — Официальное Русское Сообщество
важный момент. в docker-compose.yml он указан как
networks:
 backend:
 webproxy:
   external: true
источник

kk

karser karser in RU.Docker — Официальное Русское Сообщество
т.е зависит от контекста. когда он запускается из под docker-compose, он считается как bridge, когда из под swarm - то overlay
источник

kk

karser karser in RU.Docker — Официальное Русское Сообщество
Попробую так
```
networks:
 backend:
 webproxy:
   external: true

        driver: "bridge"
```
источник

c

corsars in RU.Docker — Официальное Русское Сообщество
karser karser
т.е зависит от контекста. когда он запускается из под docker-compose, он считается как bridge, когда из под swarm - то overlay
да вот имнно
источник

kk

karser karser in RU.Docker — Официальное Русское Сообщество
но на другом хосте у меня webproxy overlay. Т.е docker-compose.yml станет несовместимым(
источник

c

corsars in RU.Docker — Официальное Русское Сообщество
Так сколько у тебя сетей в итоге ?
источник

kk

karser karser in RU.Docker — Официальное Русское Сообщество
другой хост никак не связан с этим. на нем сеть создана docker network create --driver=overlay webproxy
источник

kk

karser karser in RU.Docker — Официальное Русское Сообщество
так тоже не сработало:
networks:
 backend:
 webproxy:
   external: true
   driver: "bridge"


docker stack deploy ...

network "webproxy" is declared as external, but it is not in the right scope: "local" instead of "swarm"
источник

kk

karser karser in RU.Docker — Официальное Русское Сообщество
```
docker network ls
NETWORK ID    NAME     DRIVER SCOPE
710b4b4158f5  webproxy bridge local
...
источник

kk

karser karser in RU.Docker — Официальное Русское Сообщество
понятно, дело именно в scope, а не типе сети.
источник

kk

karser karser in RU.Docker — Официальное Русское Сообщество
Интересно, а можно ли изменить scope сети без ее пересоздания?
источник