У меня есть Docker-контейнер, созданный с помощью docker-compose, работающей на хосте.
Полученный Docker-контейнер имеет свою собственную сеть:
docker exec -it containername /bin/bash
root@4913fd78f383:/# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
155: eth0@if156: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:ac:14:00:02 brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet 172.20.0.2/16 brd 172.20.255.255 scope global eth0
valid_lft forever preferred_lft forever
Итак, контейнер занимает IP 172.20.0.2 / 16 в хосте.
Моя проблема в том, что таким образом мой хост не может подключиться к реальным хостам 172.20.xy в сети , где хост подключен.
Итак, контейнер (со своим собственным ip) скрывает другие реальные адреса.
Мне нужно изменить IP-адрес существующего контейнера, возможно, без его удаления / повторного создания.
Я создал свой контейнер с помощью docker compose, поэтому я использую эти команды для запуска / остановки контейнера:
docker start containername
docker stop containername
Заранее спасибо.