2015-08-22 3 views
1

У меня есть Дух Блог работает внутри Snappy VM, используя следующие команды: бродяга INIT убунту/убунту-15,04-мгновенным-жильный стабильной бродяга до & & бродяга SSHПризрачный блог на Ubuntu Snappy ядра ОС

докер тянуть ghost docker run -d -p 80: 2368 -v/home/ubuntu/blog --name hello-world призрак

Теперь, когда блог работает, как я могу его просматривать из внешнего мира?

+0

использовать «порты докеров» container_id', он показывает вам порт – user2915097

ответ

1

Martin - что вы подразумеваете под «внешним миром»?

Похоже, вы запустили виртуальную машину на своей машине разработки с использованием бродяг, а затем запустили контейнер-докер на этой виртуальной машине.

Ваша команда docker публикует призрачный порт, который прослушивает (2368) на порт 80 устройства, которое прослушивает докер. Это НЕ ваша машина-разработчик, но это виртуальный виртуальный бокс! Это означает, что на хост-машине вы не можете зайти в localhost, чтобы просмотреть свой блог. (Хотя, вы можете пинговать его из виртуального бокса, используя этот адрес ...)

Что вам нужно сделать, это найти IP-адрес вашего виртуального виртуального бокса. SSH при использовании vagrant ssh. Затем запустите ifconfig и получите IP-адрес своего окна. (вам нужно знать немного здесь - мой бродячий бокс на самом деле показывает это на eth1 вместо eth0)

Вы можете сделать это проще несколькими способами. Вы можете жестко закодировать IP-адрес в вашем vagrantfile ...

ip_address = "192.168.33.17" 
Vagrant.configure("2") do |config| 

    config.vm.network :private_network, ip: ip_address 

Кроме того, вы можете использовать плагин бродячий «hostmanager», чтобы указать и т.д./запись/хостов на вашем компьютере, что позволит вам указать ваш браузер с жестко запрограммированным адресом и бродягой всегда укажет на нужную машину. Если у вас есть, что установлен (vagrant plugin install vagrant-hostmanager), вы можете изменить ваш vagrantfile с

config.hostmanager.enabled = true 
    config.hostmanager.manage_host = true 
    config.vm.define project_name do |node| 
    node.vm.hostname = "myghostblog.com" 
    node.vm.network :private_network, ip: ip_address 
    node.hostmanager.aliases = [ "www.myghostblog.com" ] 
    end 

Если вы на самом деле означает, что вы хотите, чтобы ваш блог, чтобы быть видимым из интернет-общественности, что это не то, что вы хотите делать на вашем личном компьютере без тонны знаний, которых у вас нет (иначе вам не нужно будет спрашивать :)).

+0

Я отредактировал Vagrantfile и включил отображение переадресованного порта: config.vm.network «forwarded_port», guest: 80, host: 8080, затем бродячая перезагрузка и бродяга ssh, теперь я вошел в Snappy VM и снова начал привидение, запускает docker -d -p 80: 2368 -v/home/ubuntu/blog --name test ghost, а затем проверяет сопоставление портов: введите: порт докеры be2f474bb8c9 , который показывает 2368/tcp -> 0.0.0.0:80 На этом этапе я просматриваю localhost: 8080 и вижу свой блог-призрак! Благодаря! –

+0

Приятно слышать, как это сработало. Не стесняйтесь принять ответ, если он вам поможет. –

+0

Проверьте. И теперь, когда я изменил пароль Vagrant по умолчанию, я бы хотел поехать вживую. Это блог призраков, запущенный внутри контейнера Docker на Ubuntu Snappy Core. Внутри виртуальной машины.На голой ОС я могу перестроить за несколько минут, и на аппаратном оборудовании будет винт защиты прошивки. Готовы ли я встретиться с Интернетом? Что я упустил? Как мне это сделать? -thanks –

0

Я отредактировал Vagrantfile и включил отображение переадресованного порта: config.vm.network «forwarded_port», guest: 80, host: 8080, затем vagrant reload и vagrant ssh, Теперь я вошел в Snappy VM и начал призрачный снова, docker run -d -p 80: 2368 -v/home/ubuntu/blog --name test ghost, затем выполните сопоставление портов: введите: докер-порт be2f474bb8c9, который показывает 2368/tcp -> 0.0.0.0:80 На данный момент я надеялся перейти на localhost: 8080 и посмотреть мой блог-призрак. Спасибо вам всем!

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