Я использую специальный контейнер для запуска типовых сценариев оболочки, связанных с проектом, чтобы избежать необходимости тестировать сценарии в нескольких средах (mac, win, ubuntu, debian ...) и минимизировать требования к программному обеспечению в операционной системе хоста.,Даже команды docker-compose запускаются из контейнера консоли./var/run/docker.sock привязан к хосту.
Все остальное работает нормально, но, например, если я запускаю docker-compose up traefik
в контейнере консоли , запускается traefikобычно, но он недоступен как на хосте, так и даже на другом контейнере в той же сети.Если docker-compose up traefik
запускается из хост-ОС (Windows 10), трафик становится доступным, как и ожидалось.Я подозреваю, что это как-то связано с тем, как Docker или docker-compose управляют сетью, но я не совсем уверен.Я проверил, что независимо от того, как я запускаю контейнер traefik, в NirSoft CurrPorts мгновенно появляются одинаковые порты (своего рода графический интерфейс для netstat).
Есть ли способ (и как) это исправить?
РЕДАКТИРОВАТЬ Я понял, что это должно быть как-то ошибкой с моей стороны, так как существуют докерские докеры, и у них, предположительно, нет проблем с отображением контейнеров, доступных из хоста и внешнего мира.
Теперь мне интересно, может ли это быть простой ошибкой конфигурации, либо в настройках моего докера (-compose), либо где-то еще на моей хост-машине, или сделать, например, как Portainer, выполнить некоторые дополнительные шаги, чтобы выставитьзапущенные контейнеры на хост?