Я пытаюсь создать докер-сервер с помощью ранчера в локальной сети (со многими машинами, некоторыми linux, некоторыми окнами).Я установил rancher-сервер, создал хост, добавил API для тестирования и создал балансировщик нагрузки для регистрации этого API.Локально работает нормально, я могу получить доступ к контейнеру API, например: "http://test.172.17.0.4.xip.io:3000/",, но на других компьютерах в моей сети я не могу получить доступ.
PS:
test
-> APIname
172.17.0.4
-> IP-адрес докера машины HOST (с агентом-ранчером)
xip.io
-> общедоступный шаблонный DNS (см. подробнее: http://xip.io/)
3000
-> Порт API, сопоставленный в балансировщике нагрузки
Я пытался изменить сеть контейнера в интерфейсе ранчера, не сработало, я читал кое-что о создании сети докеров, но я немного запутался,Потому что Docker создает дефокальный сетевой докер, docker0, это мостовая сеть. Я немного разбираюсь в вопросах сети.
РЕДАКТИРОВАТЬ:
Я создал Macvlan с помощью Docker Network, и теперь я могу пинговать мойКонтейнер использует другие машины, но теперь у моего контейнера нет подключения к Интернету для загрузки.
docker network create -d macvlan --subnet=172.16.108.0/26 --gateway=172.16.108.1 -o macvlan_mode=bridge -o parent=enp1s0 rancher
и попытался запустить контейнер в этой сети
EDIT2:
Это ifconfig
вывод
docker0: flags = 4099 mtu 1500 inet 172.17.0.1 маска сети 255.255.0.0 широковещательная передача 172.17.255.255 ether 02: 42: 79: 4f: fc: 66 txqueuelen 0 (Ethernet) RX-пакеты 0 байтов 0 (0,0 B) RX-ошибок 0 отброшено 0 переполнений 0 кадр 0 TX-пакетов 0 байтов 0 (0,0 B)) Ошибки TX 0 отброшены 0 переполнений 0 несущих 0 коллизий 0
enp1s0: flags = 4163 mtu 1500 inet 172.16.108.1 маска сети 255.255.255.192 широковещательная передача 172.16.108.63 inet6 fe80 :: 593f: 24d0: 31f2: 4fd8 prefixlen 64scopeid 0x20 ether d0: 94: 66: a5: 29: 8f txqueuelen 1000 (Ethernet) RX-пакеты 1251 байт 1024069 (1000,0 КиБ) RX-ошибки 0 отброшено 5 переполнений 0 кадр 0 TX-пакеты 980 байтов 157904 (154,2 КиБ) TX-ошибки 0 отброшено0 переполнений 0 несущих 0 коллизий 0
lo: flags = 73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 :: 1 prefixlen 128 scopeid 0x10 loop txqueuelen 1000 (Loopback Local) RX-пакеты 0 байтов 0 (0.0B) Ошибки RX 0 отброшены 0 переполнений 0 кадра 0 пакетов TX 0 байтов 0 (0,0 B) Ошибки TX 0 отброшены 0 переполнений 0 несущих 0 коллизий 0
EDIT3:
Я попытался указать передачу IP-адресаflag - адрес, когда запускается ранчер и / или хост, и результат тот же: unknown flag: --address
команды, которые я пытался сделать:
docker run -d --restart=unless-stopped --address 172.16.108.63 -p 8080:8080 rancher/server
Комузапустить ранчер сервер.Я тоже пытался с macvlan
docker run --privileged --name some-docker1 --address 172.16.108.63 -d docker:stable-dind
Чтобы запустить машину ранчо (чтобы стать будущим хостом)
И я попробовал ту же команду выше, но без --address.Затем, вложенный в оболочку контейнера, я попытался создать хост
docker run -e CATTLE_AGENT_IP="172.17.0.3" --rm --privileged --address 172.16.108.63 -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher ran
cher/agent:v1.2.11 http://172.17.0.2:8080/v1/scripts/3FA0E7B767770264BCAD:1546214400000:P9NfsauqyhZpoeIBgGyCZIHkKtE
Результаты совпадают ..
RESUME: I 'я пытаюсь создать сервер ранчера в моей локальной сети для доступа к приложениям в моем балансировщике нагрузки с других компьютеров в той же сети.