Quelle est la meilleure pratique de docker + ufw sous Ubuntu

J'ai juste essayé Docker. Il est génial, mais ne semble pas fonctionner correctement avec ufw. Par défaut, le panneau permet de manipuler les iptables un peu. Le résultat n'est pas un bug, mais pas ce que j'attendais.
Pour plus de détails, vous pouvez lire Les dangers de UFW + Docker

Mon objectif est de mettre en place un système comme

    Host (running ufw) -> docker container 1 - nginx (as a reverse proxy)
                       -> docker container 2 - node web 1
                       -> docker container 3 - node web 2
                       -> .......

Je veux gérer le trafic entrant (par exemple, limiter l'accès) à travers ufw donc je ne veux pas de menu fixe à toucher mon iptables. Voici mon test de

Environnement:

  • nouvellement installé Ubuntu 14.04 (kernel 3.13.0-53 )
  • Docker 1.6.2
  • ufw le transfert est activé.( Activer UFW transfert )
  • --iptables=false a été ajouté le démon Docker.

Première Tentative

docker run --name ghost -v /home/xxxx/ghost_content:/var/lib/ghost -d ghost
docker run --name nginx -p 80:80 -v /home/xxxx/nginx_site_enable:/etc/nginx/conf.d:ro --link ghost:ghost -d nginx

Pas de chance. La première commande est bien, mais le deuxième commande renvoie une erreur

Error response from daemon: Cannot start container

Deuxième Tentative

Ensuite, j'ai trouvé ceci: incapable de conteneurs de liens avec iptables --=false #12701

Après l'exécution de la commande suivante, tout à l'air OK.

sudo iptables -N DOCKER

Cependant, j'ai remarqué que je ne peux pas établir toutes les connexions sortantes à l'intérieur des contenants. Par exemple:

xxxxg@ubuntu:~$ sudo docker exec -t -i nginx /bin/bash
root@b0d33f22d3f4:/# ping 74.125.21.147
PING 74.125.21.147 (74.125.21.147): 56 data bytes
^C--- 74.125.21.147 ping statistics ---
35 packets transmitted, 0 packets received, 100% packet loss
root@b0d33f22d3f4:/# 

Si je supprime --iptables=false du démon Docker, puis la connexion internet de conteneurs sera de retour à la normale, mais la ufw ne fonctionne pas "correctement" (well...by ma définition).

Alors, quelle est la meilleure pratique de docker + ufw? Quelqu'un peut-il fournir de l'aide?

Grâce.

Bart.

  • iptables -N DOCKERcommence une nouvelle chaîne avec ce nom... peut-être que vous pouvez sortir de la iptables activer (je veux dire sans enlever --iptables=false et puis vous pouvez exécuter un "poste de commandement" de la chaîne de départ. Je n'ai pas la réponse sur ce qui est la meilleure pratique o_O