- Moté,
Salut tout le monde,
J’ai deux applications que j’installe sur mon VPS via docker-compose. Pour l’instant, j’en ai une d’installée, et je cherche à mettre la deuxième. Problématique : les deux ont des dépendances similaires. Si je lance les deux docker compose séparément, cela va-t-il créer 2 fois les containes avec les services concernés ? Si oui, y a-t-il moyen de simplement connecter les services d’un docker-compose à des containers déjà existants ?
Je vous fais une version plus longue, c’était juste une petite intro.
J’ai un p’tit VPS, et je suis une bille en admin sys. Je me suis dit que plutôt que de galérer à installer (mal) un certain nombre de services, j’allais utiliser des systèmes déjà empaquetés. D’où le choix de Docker, qui permet d’installer les services que je souhaite utiliser : Nextcloud et Mastodon.
J’ai installé Nextcloud parce que c’était le plus simple et à mon avis le plus propre à installer. J’ai simplement installé une version déjà faite du docker-compose qu’on trouve dans les exemples, en l’occurrence la version totale avec nginx et Let’s Encrypt. Son docker-compose se trouve ici.. C’est très simple, il suffit d’indiquer le domaine dans les variables d’environnement et de donner un mot de passe à l’utilisateur de la DB. Ça roule tout seul.
Maintenant, on passe à mastodon. Les fichiers se trouvent par ici. C’est déjà beaucoup plus le bazar. Y a un fichier de conf à éditer avec beaucoup plus d’infos. L’elastic search est optionnel, donc ça je m’en fous. La DB, c’est du postgre, donc je vais laisser ça vu que c’est différent de Nextcloud.
Par contre, les deux utilisent redis, et je ne souhaite pas avoir un 2e container qui tourne avec le même service. Donc si je lance le docker-compose comme ça, il me créera bien une 2e fois le container ? Surtout qu’en plus c’est une image différente qui est utilisée. Comment est-ce que docker-compose gère les connexions entre services ? Dans Nextcloud, il y a juste une dépendance avec redis, mais pas d’informations de connexion ni rien. Dans Mastodon, dans le fichier de conf d’exemple, on voit par contre des informations sur le port et le localhost.
Par ailleurs, pour Mastodon ils font installer nginx à part, mais Nextcloud fait utiliser le container nginx proxy. Si je ne m’abuse, j’ai juste à indiquer les variables d’environnement VIRTUAL_HOST, ainsi que LETSENCRYPT_HOST et LETSENCRYPT_EMAIL pour le compagnon let’s encrypt pour toute la partie proxy web et SSL, donc ça normalement c’est assez facile.
Donc bon, si quelqu’un peut me pointer dans la bonne direction pour comprendre comment interagissent les applications Docker et comment Docker-compose met ça en place, ce serait super ^^'
Merci beaucoup !