Mémo pour configurer une adresse ip fixe sur un container ayant plusieurs réseaux déclarés.

Le besoin

Le réseau public est un réseau déclaré par le reverse proxy Nginx en frontal.

En utilisant docker-compose :

  1. Avoir un container pour une application web et rattaché au réseau public créé par le reverse proxy Nginx et à un réseau privé pour avoir accès à la base de données.
  2. Avoir un réseau privé commun avec un container MariaDB ou MySQL.
    Ce qui permet de ne pas rattacher le container de bases de données à un réseau public pour des raisons plus qu’évidentes 😉 .

Premier essai

Tous dans le réseau public :

 

Résultat ok, mais le container DB peut être accessible par d’autres containers sur le même réseau créé par le proxy Nginx.

Second essai

Première tentative d’Isolation du container myapp-db ;

 

Résultat pas ok. Docker Compose n’aime pas ce genre de conf.

Troisième essai

Petite astuce qui va permettre à Docker Compose d’être d’accord :

Et voilà !