по умолчанию, docker-compose создает выделенную сеть для сервисов, которые вы используете.Когда вы запускаете экземпляр Docker, используя docker run
и не указываете, в какой сети следует запускать, он будет работать в сети default
.
Это может быть проблемой, и вы можете решить ее, запустив экземпляр Docker.которые не используют compose в сети docker-compose.Чтобы получить имя сети, вы можете запустить
docker inspect <compose_container_id> | grep -i "NetworkMode"
Как только вы получите имя сети, вы можете запустить контейнер, подключиться к сети и связать со службами экземпляров compose.
docker run -it --network <network_name> --link <compose_container_name> <docker_image>
С другой стороны, я не знаю, почему вставленная вами ошибка показывает, что вы пытаетесь подключиться к localhost.
HTTPConnectionPool (host = 'localhost', port = 5000)
В случае, если вы хотите подключиться к сопоставленному порту хоста, вы должны указать ip хоста, который подключен к контейнерусеть.
Надеюсь, вы найдете это полезным.