2013-11-12 5 views
2

Я создал debian vm и через кушетку я только что создал один виртуальный хост и указал локальный ip, который он создал внутри моего хост-файла. Но теперь, когда я пытаюсь создать другое, это не сработает. Я читал другие темы, такие как:Как добавить еще один виртуальный хост?

creating virtual hosts on a vagrant box, который упоминает об использовании шеф-повара. Но я не понимаю, почему это нормально? Нормальным способом я хочу создать новый файл vhost в/etc/apache2/sites-available, включив его и просто создав путь с ip в файле хоста локальных компьютеров. Что такое шеф-повар, который я делаю вручную?

Вот мой бродяга файл:

Vagrant.configure("2") do |config| 
    config.vm.box = "debian-wheezy72-x64-vbox43" 
    config.vm.box_url = "https://puphpet.s3.amazonaws.com/debian-wheezy72-x64-vbox43.box" 

    config.vm.network "private_network", ip: "192.168.56.101" 

    config.vm.synced_folder "/Volumes/www", "/var/www", id: "vagrant-root", :nfs => false 

    config.vm.usable_port_range = (2200..2250) 
    config.vm.provider :virtualbox do |virtualbox| 
    virtualbox.customize ["modifyvm", :id, "--name", "wheezyDEB"] 
    virtualbox.customize ["modifyvm", :id, "--natdnshostresolver1", "on"] 
    virtualbox.customize ["modifyvm", :id, "--memory", "512"] 
    virtualbox.customize ["setextradata", :id, "--VBoxInternal2/SharedFoldersEnableSymlinksCreate/v-root", "1"] 
    end 

    config.vm.provision :shell, :path => "shell/initial-setup.sh" 
    config.vm.provision :shell, :path => "shell/update-puppet.sh" 
    config.vm.provision :shell, :path => "shell/librarian-puppet-vagrant.sh" 
    config.vm.provision :puppet do |puppet| 
    puppet.facter = { 
     "ssh_username" => "vagrant" 
    } 

    puppet.manifests_path = "puppet/manifests" 
    puppet.options = ["--verbose", "--hiera_config /vagrant/hiera.yaml", "--parser future"] 
    end 

    config.ssh.username = "vagrant" 

    config.ssh.shell = "bash -l" 

    config.ssh.keep_alive = true 
    config.ssh.forward_agent = false 
    config.ssh.forward_x11 = false 
    config.vagrant.host = :detect 
end 

ответ

3

я понял это, я не уверен, если это правильный способ сделать это, но это работает и то, что имеет значение. Если у кого есть лучший или быстрый способ, дайте мне знать.

Это то, что я сделал:

1) Я origionally использовал puphet от puphet.com
2) я был origionally используется puphet из puphet.com
3) я пошел в каталог, где puhpet дал меня, так что я пошел в mypath/кукольный/hieradata и открыл common.yaml
4) под виртуальный хост одновременно: являются параметры ВХост, например: <

vhosts: 
     VO6aT11EHJmL: 
      servername: localhost 
      docroot: /var/www/public 
      port: '80' 
      setenv: 
       - 'APP_ENV dev' 
      override: 
       - All 
     4yNJr1LpLJYA: 
      servername: laravel.dev 
      docroot: /var/www/vhosts/laravel-dev 
      port: '80' 
      setenv: 
       - 'APP_ENV dev' 
      override: 
       - all 

Каждый ВХост получает уникальный IDENTIF название и это может быть что угодно. Параметры для servername, docroot кажутся простыми, поэтому модифицируйте их.

Далее, чтобы виртуальная машина могла переконфигурировать ваши обновления, убедитесь, что ваш бродяга остановлен, внося эти изменения в common.yaml, и после того, как вы сделали и сохранили тип vagrant в терминал. Как только вы заходите в свои каталоги, где находится ваш каталог, доступный для ваших сайтов. В моем случае я использую apache под debian; То же самое касается ubuntu.

/etc/apache2/sites-available 

файлы, которые вы видите здесь, их имя совпадает с уникальными именами, которые у вас есть в файле common.yaml кроме есть числа в них, например:

#-unique_name.conf 

так и в общем. yaml, если вы создали или изменили настройки под 4yNJr1LpLJYA, вам нужно будет искать # -4yNJr1LpLJYA.conf в этом каталоге и соответствовать настройкам, как в вашем файле common.yaml. После того, как вы сделали рестарт на сервере, в моем случае его

sudo service apache reload 

также не забудьте добавить виртуальный хост в локальный файл машины хоста и сравнить его с тем же IP, что puphet дал вам. например:

192.168.56.101 мой-виртуального домена

сделать это для каждого из них, которые вы хотите добавить.

+0

Я пробовал делать это на моей debian VM, и новый хост не отображается в '/ etc/apache2/sites-available'. Вы когда-нибудь находили другой путь? – Jeemusu

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