2015-03-16 18 views
26

5 farklı kaptan oluşan bir test ortamı çalıştırmak için docker-compose kullanıyorum. Konteynerler arası bağlantılar ve paylaşılan birimler (birimlerden) harika çalışır. Ayrıca bazı bağlantı noktaları ana makineye kadar güzelce çalışıyor.Docker-compose ile birlikte -add-host veya extra_hosts kullanma

Eksik olduğum şey, gerçek sunucuların bazılarını ip adres kodlaması yapmadan bu ortama bağlamanın bir yoludur. docker run ile /etc/hosts dosyanıza başka bir satır eklemek için --add-host kullanabilirsiniz. Docker-compose ile benzer bir şey yapmanın bir yolu var mı?

cevap

27

Harika haberlerim var: bu, Compose 1.3'te olacak!

Böyle şimdiki RC (RC1) 'de kullanıyorum:

rng: 
    build: rng 
    extra_hosts: 
    seed: 1.2.3.4 
    tree: 4.3.2.1 
1

Bu, Compose'un özellik yığında bulunuyor ancak henüz iş başlatılmış gibi görünmüyor. Github issue.

23

https://docs.docker.com/compose/compose-file/#extra_hosts

extra_hosts - hostname eşleştirmeleri ekleyin. Docker istemcisi --add-host parametresiyle aynı değerleri kullanır.

extra_hosts: 
- "somehost:162.242.195.82" 
- "otherhost:50.31.209.229" 

ip adresi ve hostname sahip bir giriş bu hizmetin, mesela için konteynerlerin iç/etc/hosts oluşturulacak:

162.242.195.82 somehost 
50.31.209.229 otherhost 
+4

yapı – expelledboy

+1

bağlantı desteklenmez bozuk gibi görünüyor . İşte doğru olanı: https://docs.docker.com/compose/compose-file/#extra_hosts –

+1

Bir kapsayıcı adında bir dış adı (IP değil) nasıl eşleyebilirim? –