Общаться между собой контейнеры могут общаться напрямую:
- по своим
container_name
средствами нативного DNS в докер. В этом случае порты = стандартные порты, которые слушает вас целевой контейнер (не проброшенный средствами compose).
- Другой вариант - назначение средствами docker compose вашим контейнеров статических IP-адресов и общение через них, но это исключительная история.
Третий вариант, который судя по наличию в вашем конфиге
ports
, возможно, предполагался - это общение через сам хост докера, то есть через порты, высталенные на сам хост. В этом случае нужно проверить, что фаерволл Docker-хоста разрешает подключения с localhost на выставленные хосту порты в вашем докер-файле.
Если у вас возникнут другие вопросы по Docker, вы можете обратиться к нам в
rubicom.tech для получения готовых шаблонов быстрого развертывания популярных сервисов для Docker и Kubernetes