2016-11-17 6 views
0

Несмотря на чтение этогоимя Vagrant VirtualBox застрял по умолчанию

How to change Vagrant 'default' machine name?

мое имя хоста прилипла к default

Вот мой Vagrantfile:

Vagrant.configure(2) do |config| 
    config.vm.box = "hashicorp/precise32" 
    config.vm.hostname = "web" 
    config.vm.network :private_network, ip: "10.0.0.10" 
    config.vm.provider :virtualbox do |vb| 
    vb.name = "vagrant-web" 
    end 
end 

Но

$ vagrant status 
Current machine states: 

default     running (virtualbox) 

и

$ vagrant ssh web 
The machine with the name 'web' was not found configured for 
this Vagrant environment. 

но

$ vagrant ssh default 

работает отлично.

Я сделал vagrant halt и vagrant up. Любые другие предложения?

ответ

0

Если вы хотите изменить бродячей имени (по сравнению с именем VirtualBox), вам необходимо сделать следующий

Vagrant.configure(2) do |config| 
    config.vm.box = "hashicorp/precise32" 

    config.vm.define "web" do |web| 
    web.vm.hostname = "web" 
    web.vm.network :private_network, ip: "10.0.0.10" 
    web.vm.provider :virtualbox do |vb| 
     vb.name = "vagrant-web" 
    end 
    end 

end 

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

При запуске виртуальной машины, он будет говорить

$ vagrant up 
Bringing machine 'web' up with 'virtualbox' provider... 

и поэтому, если вы обзор состояния вы увидите

$ vagrant status 
Current machine states: 

web      running (virtualbox) 

к SSH в машину вы можете просто vagrant ssh как вы есть одна машина, (обязательно vagrant ssh web также будет работать)

One Note Of Caution как новый бродяга ine действительно создаст новую машину с новым именем, машина по умолчанию, которую вы создали, остается такой, что если у вас уже есть вещи, она не будет автоматически скопирована в новую машину. Если вы хотите сохранить существующий виртуальную машину можно переименовать по умолчанию каталога из .vagrant папки в сеть, он может theoritically работать, но я никогда не пробовал себя

+0

Просто пробил в. Переименовании '.vagrant/машины/папок default' для '.vagrant/machines/your_custom_name' будет работать, если оно соответствует имени в' config.vm.define'. – user6616962