Şu anda Docker Machine, makinenizde VirtualBox altında çalışan sanal bir makinedir, bu nedenle sanal makine bağlantı noktanızı ana makine bağlantı noktasına eşleştirmeniz gereken uygulama bağlantı noktanızı açığa çıkarmak için.
iki seçenek vardır Bunu başarmak, ama önce emin olmak için Docker Makine durdurulduğunda çalışan için:
docker-machine stop default # see PS below if docker machine isn't default
Seçenek 1 - VirtualBox arayüzünü
- Açık VirtualBox Müdürü
kullanın
- Docker Makine VirtualBox görüntüsünü seçin (örn .: varsayılan)
- Ayarlar'ı açın -> Ağ -> Gelişmiş -> Liman İleri
- uygulamanızın adını, istenen konakçı portunu ekleyin (örn: 80) ve Misafir portu (örn: 3000)
Seçenek 2 - VirtualBox komut satırını kullanın
Sadece kendi parametreleri ile aşağıdaki komutu çalıştırın:
VBoxManage modifyvm "dev" --natpf1 "myapp,tcp,,80,,3000"
Final düşünceler
docker-machine start default
eval $(docker-machine env default)
Sonra sadece uygulamanız Docker kabı başlatmak ve
http://localhost/ çalışan sınamak:
Artık Docker Makine yayınlanmaya başlayabilir.
S.S .: Docker Makinenizin adı, varsayılan olmayabilir, bu durumda adı uygun şekilde değiştirin.
Keşfettiğim tüm cevaplardan, bana yardımcı olan bu. +1 – Tagc
İlk önce "docker-machine stop" çalıştırmak gerekli değildir. Bu cevap gönderildiği tarihten bu yana değişmiş olabilir, ancak en azından son birkaç aydır doğrudur. – toddkaufmann
VirtualBox'ta Docker Host ile eşlenen herhangi bir/tüm portları almanın bir yolu yok mu? Her seferinde yeni bir port ciltleme yapmak için bir sürü güçlük çekiyor! –