2013-04-07 2 views
1

Я запускаю vmware fusion 5 на osx 10.8, моя гостевая ОС - это Arch Linux, в настоящее время я могу ssh в гостевую os совершенно нормально через ssh 172.16.4.191, однако, когда я пытаюсь простой Синатра приложениеПолучение приложения sinatra для работы с vm

require 'sinatra' 

get '/hi' do 
    "Hello world!!!!!!!" 
end 

ruby hi.rb

2013-04-06 19:45:18] INFO WEBrick 1.3.1 
[2013-04-06 19:45:18] INFO ruby 2.0.0 (2013-02-24) [x86_64-linux] 
== Sinatra/1.4.2 has taken the stage on 4567 for development with backup from WEBrick 
[2013-04-06 19:45:18] INFO WEBrick::HTTPServer#start: pid=426 port=4567 

он не доступен из моего хозяина OS

curl 172.16.4.191:4567 
curl: (7) couldn't connect to host 

Любые предложения были бы замечательными, и, конечно же, я предоставил больше информации по мере необходимости.

Edit:

Поделиться с моим макинтош выбран «Акции виртуальных машин IP-адрес из Mac на внешней сети Маке обеспечивает NAT для сетевого трафика формируют виртуальную машину»

Редактировать :

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

и Iptables не показывает никаких правил

Chain INPUT (policy ACCEPT) 
target  prot opt source    destination 

Chain FORWARD (policy ACCEPT) 
target  prot opt source    destination 

Chain OUTPUT (policy ACCEPT) 
target  prot opt source    destination 
+0

Ответ, скорее всего, это связано с Настройки сети VMWare. Если у вас есть сеть на гостевой машине VM через NAT, вам нужно будет отредактировать параметры переадресации портов и добавить новый порт. Не могли бы вы добавить настройки вашей виртуальной машины (как видно из приложения VMWare, которое контролирует свойства гостя)? –

+0

У меня только есть общий доступ к Интернету с включенным mac, есть ли более продвинутый раздел в fusion? – cheshirecatalyst

+0

Да, у VMWare множество сетевых опций. В настоящее время я использую VirtualBox, поэтому не могу напрямую ссылаться на вас. Но запустите приложение VMWare Fusion, где вы определили гостевую машину, и найдите сетевые параметры. Для хоста будут некоторые общие, а конкретные для гостя. Существует не менее трех различных стратегий, которые позволяют гостю подключаться к сети, и вы можете использовать более одного. , , –

ответ

12

Вам нужно эту строку в hi.rb:

set :bind, '0.0.0.0' 

Document говорит '0.0.0.0' это значение по умолчанию. Это не правильно.

+0

спасибо. что отлично работало ... я думаю, никогда не беру на себя документальное слово. – cheshirecatalyst

+0

По умолчанию используется localhost, если среда является «развитием». Это 0.0.0.0 в противном случае. –

0

На всякий случай кто-то пытается это сделать на mac/windows 7 с помощью vmware с NAT/sinatra, убедитесь, что диспетчер IIS установлен и настроен (подключиться к серверу -> localhost: 4567).

из моего окна браузера, локальный: 4567/promo_id/работы

из браузера в макинтош, http://172.16.178.xxx:4567/promo_id/ где 172.16.178.xxx является IPv4-адреса из IpConfig

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