2015-05-12 7 views
1

Это должна быть простая проблема. Я использую boot2docker. Если я SSH в boot2docker:nginx недоступен вне контейнера Docker

[email protected]:~$ docker ps 
CONTAINER ID  IMAGE       COMMAND    CREATED    STATUS    PORTS       NAMES 
89ec1492d7c7  mycontainer:latest "/bin/sh -c nginx" 35 seconds ago  Up 35 seconds  80/tcp, 0.0.0.0:80->1000/tcp desperate_mestorf 

Тогда завиток:

[email protected]:~$ curl localhost:1000 curl: (7) Failed connect to 
localhost:1000; Connection refused 
[email protected]:~$ curl 
localhost:80 curl: (56) Recv failure: Connection reset by peer 

Curl'd на порту 80 только, чтобы убедиться, что я не схожу с ума. Затем я подключаюсь к моим контейнерам bash:

[email protected]:~$ docker exec -i -t 89ec1492d7c7 bash 
[email protected]:/srv/www# curl localhost 
<!DOCTYPE html><html><head><link rel="stylesheet" href="/main.css"></head><body><h1>Welcome to Harp.</h1><h3>This is yours to own. Enjoy.</h3></body></html>root 

Boom! Он работает, даже попробовал это, оставив порт по умолчанию 80. Что действительно странно, у меня есть другие контейнеры в моей коробке, в которые я могу добраться. Даже за пределами моей загрузочной виртуальной машины (которую я использую только для того, чтобы вытащить еще одну вещь из уравнения). Это должно быть просто правильно?

+0

Вы опубликовали порт на хосте при запуске своего контейнера? – xuhdev

+0

В докер-файле у меня есть «разоблачение 80» ... Я оба разоблачил порт и не выставил порт, то же самое. Если я опубликую этот файл докеров в AWS, он отлично работает. –

ответ

1

еще один и тот же вопрос в Unable to connect to Docker Nginx build

Вот способ подключения Nginx службы докер контейнера:

docker ps   # confirm nginx is running, which you have done. 
docker port desperate_mestorf # get the ports, for example: 80/tcp, 0.0.0.0:80->1000/tcp 
boot2docker ip  # get the IP address, for example: 192.168.59.103 

Так что теперь, вы должны быть хорошо для подключения к:

http://192.168.59.103:1000 
+0

Мне пришлось привязываться к другому порту, а затем настроить перенаправление портов в виртуальной машине, не нужно делать это для других вещей, так что это странно. –

Смежные вопросы