Pour mon "homelab" sur un VPS, j'utilise docker compose et non swarm (vu qu'il n'y a qu'une seule machine), mais j'ai eu un peu le meme sujet que toi.
Pour ma part, j'ai considéré que le coup de la clé SSH avec droits root sur Github était rédhibitoire, meme pour un homelab. Je suis donc parti en quete d'une version webhook. J’étais tombe notamment sur Gantry qui est specifique a swarm et qui pourrait t’intéresser: Il marche sur un webhook (avec une API key) et docker pull depuis la registry les containers qui ont un certain label. Donc pas besoin de le "configurer" qui est le reproche que tu fais a portainer si j'ai bien compris. Il suffit que tu mettes les labels sur tes containers au déploiement.
Bon moi pour ma part j'ai fait plus simple, j'ai fait un Dockerfile avec le package webhook avec une API key, et qui fait simplement git pull + docker compose up --build. Je deploie tout ca avec un playbook ansible, j'ai juste une liste de services a déclarer, j'utilise une variable ansible pour ca. Dans l'esprit homelab, c'est bien suffisant, mais j'aurais bien aimer avoir une solution a base de labels.
# Joli
Posté par flagos . En réponse au journal Docker swarm et CI, les contextes à la rescousse. Évalué à 5. Dernière modification le 05 mars 2026 à 17:26.
Pour mon "homelab" sur un VPS, j'utilise docker compose et non swarm (vu qu'il n'y a qu'une seule machine), mais j'ai eu un peu le meme sujet que toi.
Pour ma part, j'ai considéré que le coup de la clé SSH avec droits root sur Github était rédhibitoire, meme pour un homelab. Je suis donc parti en quete d'une version webhook. J’étais tombe notamment sur Gantry qui est specifique a swarm et qui pourrait t’intéresser: Il marche sur un webhook (avec une API key) et docker pull depuis la registry les containers qui ont un certain label. Donc pas besoin de le "configurer" qui est le reproche que tu fais a portainer si j'ai bien compris. Il suffit que tu mettes les labels sur tes containers au déploiement.
Bon moi pour ma part j'ai fait plus simple, j'ai fait un Dockerfile avec le package
webhookavec une API key, et qui fait simplement git pull + docker compose up --build. Je deploie tout ca avec un playbook ansible, j'ai juste une liste de services a déclarer, j'utilise une variable ansible pour ca. Dans l'esprit homelab, c'est bien suffisant, mais j'aurais bien aimer avoir une solution a base de labels.