2017-01-11 1 views
0

ich diese Frage über von Serverfault bewegt haben, dachte ich, es eher eine Frage dort :-)Vagrant - Die folgenden Einstellungen nicht existieren sollten: Speicher, Name

gehört, war habe ich Vagrant Version 1.9.1 auf macOS und ich habe VirtualBox 5.1.12 Ich versuche, eine Multi-Maschine Vagrant-Datei zu erstellen und ich laufe in Schwierigkeiten, wenn ich es ausführen möchte.

bekomme ich die Meldung:

There are errors in the configuration of this machine. Please fix the following errors and try again:

vm: * The following settings shouldn't exist: memory, name

Jetzt in diesem Stadium habe ich die zweite Maschine auf Kommentar, weil ich den Fehler zweimal zu bekommen - so Ich versuche nur, um den ersten zu beheben.

ich auf anderen Threads gesehen haben sollte ich die .vm in den Leitungen entfernen, die in der „Bahn“ Block sind, aber wenn ich das dann bekomme ich diese Fehlermeldung:

There are errors in the configuration of this machine. Please fix the following errors and try again:

Vagrant: * Unknown configuration section 'memory='.
* Unknown configuration section 'name='.
* Unknown configuration section 'network'.
* Unknown configuration section 'provision'.

Ich bin ein bisschen von einem Verlust hier, weil die Antworten, die ich bekomme, in der Theorie Sinn machen, und ich habe das von den vagrant up Docs angefangen, aber irgendwie in meinem Fall kann ich es nicht laufen lassen.

Meine vagrant Datei ist hier richtig - also bitte jede mögliche Hilfe würde :-)

Vagrant.configure("2") do |config| 

config.vm.box = "bento/ubuntu-16.04" 

config.vm.provider "virtualbox" do |vb| 
    vb.gui = false 
end 

config.vm.define "web" do |web| 
    web.vm.name = "16.04-web01" 
    web.vm.memory = "512" 
    web.vm.network "private_network", ip: "192.168.50.3" 
    web.vm.network "forwarded_port", guest: 80, host: 8083 
    web.vm.network "public_network", bridge: "en1: Wi-Fi (AirPort)" 
    web.vm.provision :shell, path: "bootstrap.sh"  
end 

# config.vm.define :sql01 do |sql| 
#  sql.vm.name = "16.04-sqlserver" 
#  sql.vm.memory = "4096" 
#  sql.vm.network "private_network", ip: "192.168.50.2" 
#  sql.vm.network "forwarded_port", guest: 80, host: 8084 
#  sql.vm.network "public_network", bridge: "en1: Wi-Fi (AirPort)" 
#  sql.vm.provision :shell, path: "bootstrap.sh"  
# end 

#Options for Me specific 
config.vm.synced_folder "/Applications/MAMP/htdocs/", "/htdocs_home" 

end 

Antwort

3

name und memory sind providerspezifische Parameter geschätzt werden, so dass sie in diesem Block

Vagrant.configure("2") do |config| 

    config.vm.box = "geerlingguy/ubuntu1604" 

    config.vm.define "web" do |web| 
     web.vm.network "private_network", ip: "192.168.50.3" 
     web.vm.network "forwarded_port", guest: 80, host: 8083 
     web.vm.network "public_network", bridge: "en1: Wi-Fi (AirPort)" 
     web.vm.provision :shell, path: "bootstrap.sh"  

     web.vm.provider "virtualbox" do |vb| 
      vb.gui = false 
      vb.name = "16.04-web01" 
      vb.memory = "512" 
     end 
    end 

    config.vm.define :sql01 do |sql| 
     sql.vm.network "private_network", ip: "192.168.50.2" 
     sql.vm.network "forwarded_port", guest: 80, host: 8084 
     sql.vm.network "public_network", bridge: "en1: Wi-Fi (AirPort)" 
     sql.vm.provision :shell, path: "bootstrap.sh"  

     sql.vm.provider "virtualbox" do |vb| 
      vb.gui = false 
      vb.name = "16.04-sqlserver" 
      vb.memory = "4096" 
     end 
    end 

    #Options for Me specific 
    config.vm.synced_folder "/Applications/MAMP/htdocs/", "/htdocs_home" 

end 
+0

bewegt werden müssen, Kann ich den verschiedenen Rechnern einen anderen Namen und eine andere Speicherzuweisung zuweisen? –

+0

sicher .. Bearbeiten der Antwort, um das Beispiel zu zeigen ... der Provider-Block muss dann in jedem VM-Block sein, wenn Sie außerhalb setzen, gilt für alle VM –

+0

Ah das ist cool, das macht Sinn - nicht darüber nachdenken, die Anbieter innerhalb der Definitionen :-) –

Verwandte Themen