Leiten Sie Ports von boot2docker mithilfe des Vagrant Docker-Anbieters weiter
Ich versuche, den Docker-Anbieter von Vagrant 1.6 zu verwenden, und bin anscheinend auf einen Haken gestoßen. Ich kann den Docker-Container und das Gastbetriebssystem erfolgreich aufrufen, kann dann jedoch nicht auf den Dienst zugreifen, den ich im Container über das Hostbetriebssystem aufgerufen habe. Hier ist meine Vagrantdatei:
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.network :forwarded_port, guest: 8000, host: 8000
config.vm.define "icecast" do |v|
v.vm.provider "docker" do |d|
d.image = "moul/icecast"
d.ports = ["8000:8000"]
d.env = {
# SOURCE_PASSWORD: 'password',
ADMIN_PASSWORD: 'password',
# PASSWORD: 'password',
# RELAY_PASSWORD: 'password'
}
end
end
end
Mein Verständnis ist das Laufenvagrant up --provider=docker
Unter OS X wird eine VM mit boot2docker gestartet, die dann meinen Container ausführt. Laufenvagrant docker-logs
scheint zu bestätigen, dass mein Container erstellt und der Dienst gestartet wurde, aber jetzt kann ich nicht für mein ganzes Leben herausfinden, wie ich von meinem OS X-Host aus auf den Dienst zugreifen kann. Wenn ich einen Standard-VirtualBox-Anbieter verwenden würde, würde ich das erwartenconfig.vm.network :forwarded_port
Direktive für die Weiterleitung, aber das Hinzufügen scheint keinen Unterschied zu machen.
Was muss ich tun, um von meinem OS X-Host aus auf diesen Dienst zugreifen zu können?
Aktualisieren: Als Referenz ist hier das Dockerfile des Bildes:https://github.com/moul/docker-icecast/blob/master/Dockerfile