Несколько способов перенаправления трафика между контейнерами Docker:
Проброс портов. 12 Docker связывает порт хостовой машины с портом контейнера, перенаправляя трафик с указанного порта хоста на внутренний IP-адрес и порт контейнера. 1 Для этого используется флаг -p или --publish при запуске команды docker run. 2 Например, чтобы сопоставить порт 80 в контейнере с портом 8080 на хост-системе, нужно выполнить команду docker run -p 8080:80 nginx
. 2
Настройка перенаправления портов в Docker Compose. 2 В файле Docker Compose перенаправление портов настраивается с использованием директивы ports. 2 Синтаксис аналогичен команде docker run. 2
Вручную пробросить порты через сеть. 1 Для этого можно использовать команды маршрутизации или утилиты вроде socat. 1 Например, трафик, поступающий на порт 8080 хоста, перенаправляется на порт 80 контейнера с помощью команды socat TCP-LISTEN:8080,fork TCP:172.17.0.2:80
. 1