Посмотрите на столбец PORTS
вывода docker ps:
PORTS
27017/tcp
Сопоставление не указано (символ ->
). Это означает, что порт контейнера не публикуется за пределами сетей docker.
Два возможных способа решения вашей проблемы:
- Не указывайте localhost в качестве имени хоста, а ip контейнера: вы можете получить его с помощью
docker inspect CONTAINER
. Если вы используете Cygwin: docker inspect CONTAINER | grep IPAddress
. - publi sh порт контейнера mon go на хост-компьютере. Вы можете опубликовать sh на том же порту или нет с помощью аргумента
-p
, например -p HOST_PORT:CONTAINER_PORT
.
Например, с тем же портом: docker run -d -p 27017:27017 mongo:latest
.
С помощью docker ps вы можете видеть, что порт опубликован на хосте:
PORTS
0.0.0.0:27017->27017/tcp