Web sitemin tüm bölümlerini docker kaplarında çalıştıracağım bir kurulum var. 80 ve 443 numaralı bağlantı noktasını dinleyen nginx'im bir kapta çalışır.
363292a98545 scivm/nginx-django-scivmcom:latest /usr/bin/supervisord 12 days ago Ghost 0.0.0.0:40001->22/tcp, 88.198.57.112:443->443/tcp, 88.198.57.112:80->80/tcp lonely_feynmann
Başka bir kapsayıcıdaki bir hizmete proxy ayarlamak istiyorum. Bu kap, ana bilgisayardaki 3000 numaralı bağlantı noktasına bağlıdır:
b38c8ef72d0a mazzolino/strider-dind:latest wrapdocker /usr/bin/ 41 minutes ago Up 41 minutes 0.0.0.0:3000->3000/tcp, 22/tcp, 27017/tcp distracted_einstein
Docker ana bilgisayarındaki iptables'ım şöyle:
root@Ubuntu-1204-precise-64-minimal /var/run # iptables -L
Chain INPUT (policy ACCEPT) target prot opt source destination
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh
ACCEPT tcp -- anywhere anywhere tcp dpt:http
ACCEPT tcp -- anywhere anywhere tcp dpt:https
ACCEPT tcp -- anywhere anywhere tcp dpt:8000
DROP all -- anywhere anywhere
Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Konteynerin içinden, iptables yapılandırması nedeniyle ana makinedeki 3000 numaralı bağlantı noktasına bağlanamıyorum.
3000 numaralı limanı halka açık internete açmak istemiyorum.
3000 numaralı kapta konteyner ile sunucu arasında doğrudan bir köprü açmanın bir yolu var mı?
Yoksa iptables'ımı docker ip aralığından kabul edecek şekilde değiştirmeli miyim?