Ubuntu на сервере VirtualBox и Rails - PullRequest
4 голосов
/ 23 июля 2011

У меня Windows 7. Установлены VirtualBox и Ubuntu 11.04 в качестве гостевой ОС.Работа в сети осуществляется через NAT.Все хорошо: у меня есть интернет на Ubuntu.Я могу получить доступ к Windows из Ubuntu по его ip.Но я не могу получить доступ к Ubuntu по его ip, который показывает ifconfig.

Я запускаю rails на Ubuntu.

Как я могу решить эту проблему: подключиться к серверу Ubuntu / Rails на ort 3000из моей винды?

Ответы [ 3 ]

3 голосов
/ 23 июля 2011

По умолчанию NAT VirtualBox позволяет виртуальной машине выходить в Интернет; но не позволяет физической машине получить доступ к виртуальной.


Самое простое решение - использовать для вашей виртуальной машины другой сетевой параметр, нежели NAT - например, мост должен нормально работать (хотя ваша виртуальная машина будет видна в вашей сети) .

Другим решением будет использование переадресации портов; Об этом может помочь эта статья: Как получить доступ через ssh на гостевой машине Virtualbox.

2 голосов
/ 31 декабря 2011

Раньше я боролся с настройкой подобной настройки, пока не нашел Vagrant .Vagrant упрощает настройку, подключение и работу с виртуальной машиной Linux.После настройки Vagrant вы можете просто ввести vagrant ssh, чтобы войти на виртуальную машину, и ваша учетная запись имеет автоматические права sudo, и все работает как положено - вам даже не нужно входить в vm.Первоначальная настройка ssh выглядит немного более сложной в Windows, хотя вам необходимо настроить Putty перед тем, как вы сможете подключиться.

В Vagrant есть простой файл конфигурации, который вы используете, чтобы указать, какие порты изВМ, которую вы хотите переслать на ваш компьютер, используя синтаксис, такой как:

  config.vm.forward_port("rails", 80, 3000)
  config.vm.forward_port("tomcat", 8000, 8080)

, и все позаботится.Подробности: здесь

Если, например, вы используете Rails и запускаете vagrant с помощью команды vagrant up в каталоге проекта Rails, чем этот каталог доступен на ВМ.Поскольку это один и тот же общий каталог между машинами, любые изменения, которые вы вносите в каталог проекта Rails на своем компьютере с помощью обычного редактора, также видны на виртуальной машине.Это делает тестирование в других средах очень простым.

Инструкции по настройке Vagrant для Windows: здесь и RailsCast об этом здесь .Обратите внимание, что Vagrant не имеет ничего общего с Rails - вы можете использовать его для настройки любой среды виртуальной машины, которая вам нужна.

0 голосов
/ 23 июля 2011

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

Может быть, у кого-то есть умный взлом для этого, но зачем вам это вообще нужно?

Ваше решение заключается в том, чтобы либо использовать Firefox для поиска на локальном хосте в сеансе Linux Virtualbox, либо разрабатывать в Windows.

Лично я работаю наоборот, я запускаю Ubuntu 11.04, и у меня есть установки виртуальных коробок xp, 2000, me, vista и 7, поэтому я могу тестировать в разных средах. Неизбежно, я заканчиваю тем, что делюсь своей папкой проекта из Ubuntu, чтобы я мог запустить проект в любой ОС, для которой я тестирую.

...