2015-08-05 5 views
0

Я новичок в докерах. Я запускаю его на окнах. Я пытаюсь получить контейнер с именем «призрак» (доступный от Docker Hub) для работы на машине под Windows 8.1. В то время как контейнер запускается правильно и предположительно предоставляет URL-адрес по адресу http://localhost:2368, когда я вхожу в этот адрес, ничего не происходит. То же самое произошло при попытке использования других контейнеров из концентратора, которые выставляют URL-адреса.Контейнер-докер не выставлен в сети

Я попытался получить доступ к открытому URL-адресу контейнера с IP-адреса, который я получил от «docker ip», но он тоже не прошел. Я также попытался запустить контейнер с опцией «--net =" bridge ", безрезультатно. Я думаю, что мне не хватает чего-то довольно элементарного, но я не могу для жизни понять, что. Может ли кто-нибудь указать мне в правильном направлении?

ответ

0

При установке Docker на Windows, что означает, что вы, скорее всего, установили boot2docker.

boot2docker запускает минимальную виртуальную машину Linux (на основе VirtualBox), поскольку Docker требует запуска ядра Linux. Демон Docker запущен на том VM, а не на вашем localhost.

Вы можете определить IP-адрес виртуальной машины, введя boot2docker ip в командной строке. Стандартный IP-адрес boot2docker: 192.168.59.103, если вы не настроили что-то еще или не имеете несколько экземпляров этой виртуальной машины.

Поэтому, когда вы выполняете docker run --name ghost -p 2368:2368 -d ghost, порт 2368 открыт по адресу 192.168.59.103:2368. Вот где вам нужно подключиться.

Для получения дополнительной информации, пожалуйста, прочтите official boot2docker documentation.

+0

Я действительно натолкнулся на этот ответ, и я получил IP-адрес виртуальной машины с помощью «boot2docker ip», но я все еще не мог подключиться. Похоже, что даже если вы подключаетесь к IP-адресу виртуальной машины, вам все равно нужно отображать порты, чтобы публиковать их публично. Неотключенные порты недоступны. – tutiplain

0

Вы не предоставили полную команду «docker run ...», которую вы выполнили, поэтому я предполагаю, что вы запустили ту, что указана на странице изображения на Docker Hub (воспроизведена ниже).

docker run --name some-ghost -p 8080:2368 -d ghost 

Команда подвергается Port Mapping Призрака внутри контейнера (2368) к порту 8080 в Вашем boot2docker VM. Первое, что вам нужно сделать, - запустить boot2docker ip, чтобы узнать IP-адрес вашей загрузочной виртуальной машины. О номере порта, у вас есть два варианта: Ghost

  • доступа через порт 8080 (http://BOOT2DOCKER-IP:8080)
  • Изменить отображение порта выставить 2368 (-p 2368: 2368)
Смежные вопросы