[{"data":1,"prerenderedAt":117},["ShallowReactive",2],{"seo-verification":3,"blog-woodpecker-ci-pipeline-vps-forgejo-fr":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"id":7,"slug":8,"title":9,"excerpt":10,"readTime":11,"views":12,"isPinned":13,"publishedAt":14,"category":15,"categories":20,"featuredImage":22,"bgImage":23,"posterImage":24,"relatedSolution":22,"intro":25,"sections":26,"ctaTitle":68,"ctaBody":69,"ctaButton":70,"ctaUrl":71,"relatedPosts":72},212,"woodpecker-ci-pipeline-vps-forgejo","Woodpecker CI et Forgejo : pipeline CI\u002FCD sur VPS","Déployez Woodpecker CI avec Forgejo sur votre VPS pour un pipeline CI\u002FCD open source auto-hébergé, léger et souverain. Guide Docker pas à pas.",7,0,false,"2026-08-02T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":18},2,"Automatisation","automatisation","bg-brand-action\u002F10 text-brand-action",[21],{"id":16,"name":17,"slug":18,"color":19,"icon":18},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fwoodpecker-ci-pipeline-vps-forgejo-poster.svg","Woodpecker CI est un moteur de pipeline open source, fork communautaire de Drone CI sous licence Apache 2.0, conçu pour s'associer nativement à Forgejo. Chaque étape tourne dans un conteneur Docker isolé, et l'ensemble serveur + agent consomme moins de 50 Mo de RAM. Sur un VPS, les builds s'exécutent au plus près du dépôt git : pas de file d'attente cloud, pas de quota de minutes à surveiller.",[27,31,40,43,62,65],{"type":28,"title":29,"body":30},"h2","Pourquoi quitter les CI cloud pour un pipeline sur votre VPS","Les offres CI cloud facturent à la minute de build et imposent des files d'attente partagées dont le temps d'attente augmente avec le volume. Dès que les dépôts grossissent ou que les tests se multiplient, la facture dépasse rapidement le coût d'un VPS dédié. Héberger Forgejo et Woodpecker CI sur le même serveur supprime cette latence réseau : le runner lit le code en local, sans transit par une infrastructure tierce. Vous choisissez également le moment de chaque mise à jour du pipeline, et aucun secret d'intégration ne quitte votre machine.",{"type":32,"title":33,"items":34},"ul","Ce que Woodpecker CI apporte sur VPS",[35,36,37,38,39],"**Isolation Docker par étape** — chaque step tourne dans son propre conteneur, sans état partagé entre les jobs.","**Empreinte mémoire réduite** — serveur + agent Woodpecker démarrent en moins de 50 Mo de RAM cumulés.","**Configuration YAML minimaliste** — un fichier `.woodpecker.yaml` à la racine du dépôt suffit à décrire tout le pipeline.","**Intégration Forgejo native** — l'OAuth2 de Forgejo est le seul mécanisme d'authentification requis, sans plugin supplémentaire.","**Licence Apache 2.0** — le code source est auditable, la communauté fork active, sans dépendance à un éditeur propriétaire.",{"type":28,"title":41,"body":42},"Prérequis : un VPS avec Forgejo déjà en place","Woodpecker CI s'installe sur le même VPS que Forgejo ou sur un serveur dédié. Pour les deux services combinés, prévoyez 1 Go de RAM minimum et 2 Go pour un usage confortable avec plusieurs dépôts actifs. Côté logiciel : Docker et Docker Compose, un sous-domaine dédié à Woodpecker (par exemple `ci.votre-domaine.com`) pointant vers l'IP du VPS, le port 443 ouvert pour HTTPS, et un accès SSH. Forgejo doit être accessible depuis le conteneur Woodpecker sur le réseau Docker interne ou via son URL publique.",{"type":44,"title":45,"steps":46},"steps","Déployer Woodpecker CI sur votre VPS",[47,50,53,56,59],{"title":48,"body":49},"Créer une OAuth App dans Forgejo","Dans Forgejo, allez dans Paramètres → Applications → Gérer les applications OAuth2. Donnez un nom à l'application (par exemple `woodpecker`), et renseignez l'URL de redirection : `https:\u002F\u002Fci.votre-domaine.com\u002Fauthorize`. Notez le Client ID et le Client Secret générés.",{"title":51,"body":52},"Écrire le docker-compose.yml Woodpecker","Créez `\u002Fopt\u002Fwoodpecker\u002Fdocker-compose.yml` avec deux services : `woodpecker-server` (image `woodpeckerci\u002Fwoodpecker-server`) et `woodpecker-agent` (image `woodpeckerci\u002Fwoodpecker-agent`). Sur le serveur, renseignez `WOODPECKER_GITEA_URL`, `WOODPECKER_GITEA_CLIENT`, `WOODPECKER_GITEA_SECRET` (les valeurs OAuth2 copiées), `WOODPECKER_AGENT_SECRET` (chaîne aléatoire partagée entre serveur et agent), et `WOODPECKER_HOST=https:\u002F\u002Fci.votre-domaine.com`. L'agent reçoit `WOODPECKER_SERVER=woodpecker-server:9000` et le même `WOODPECKER_AGENT_SECRET`.",{"title":54,"body":55},"Démarrer la stack","Dans `\u002Fopt\u002Fwoodpecker`, exécutez `docker compose up -d`. Vérifiez les logs avec `docker compose logs -f woodpecker-server` jusqu'à voir le serveur prêt. Le service écoute en interne sur le port 8000 (UI) et 9000 (gRPC agent).",{"title":57,"body":58},"Activer le dépôt dans Woodpecker","Ouvrez `https:\u002F\u002Fci.votre-domaine.com` (derrière votre reverse proxy) et connectez-vous avec votre compte Forgejo via OAuth2. Dans le dashboard, cliquez sur « Ajouter un dépôt », sélectionnez le projet à activer. Woodpecker enregistre automatiquement un webhook dans Forgejo pour déclencher les builds.",{"title":60,"body":61},"Ajouter un fichier .woodpecker.yaml dans le dépôt","À la racine du dépôt, créez `.woodpecker.yaml`. Exemple minimal : une étape `lint` qui exécute `npm run lint` dans l'image `node:20`, une étape `test` (`npm test`), et une étape `deploy` conditionnelle à la branche `main` qui lance un `ssh deploy@votre-domaine.com .\u002Fdeploy.sh`. Poussez le fichier : un build se déclenche immédiatement dans Woodpecker.",{"type":63,"body":64},"tip","Placez le serveur Woodpecker derrière Traefik ou Caddy en HTTPS et ne l'exposez jamais directement sur le port 8000. Stockez tous les secrets de pipeline (tokens SSH, clés d'API de déploiement) dans les **secrets de dépôt** du dashboard Woodpecker — ils sont injectés en variable d'environnement lors du build sans apparaître dans le `.woodpecker.yaml` versionné.",{"type":28,"title":66,"body":67},"De la forge git au déploiement continu : une stack souveraine complète","Forgejo gère le code, les issues et les revues de PR ; Woodpecker CI orchestre les pipelines de test et de déploiement. Les deux communiquent par OAuth2 et webhooks sur votre propre réseau, sans dépendance à GitHub, GitLab ou à un service d'intégration cloud. Cette stack auto-hébergée répond aux contraintes de souveraineté des agences et des équipes techniques qui ne souhaitent pas voir leur propriété intellectuelle ou leurs secrets d'intégration transiter par des plateformes externes.","Lancez votre stack CI\u002FCD sur un VPS ServOrbit","Un VPS Cloud ServOrbit avec Docker préconfiguré et IP fixe vous permet de déployer Forgejo et Woodpecker CI en quelques minutes, avec des ressources ajustables à mesure que vos pipelines se multiplient.","Déployer sur un VPS ServOrbit","\u002Fvps-cloud",[73,91,104],{"id":74,"slug":75,"title":76,"excerpt":77,"readTime":11,"views":78,"isPinned":13,"publishedAt":79,"category":80,"categories":85,"featuredImage":22,"bgImage":23,"posterImage":87,"relatedSolution":88},74,"heberger-gitea","Héberger Gitea sur votre propre VPS","Déployez Gitea sur un VPS avec Docker, reverse proxy et SSL. Forge Git légère, rapide et 100% sous votre contrôle.",538,"2026-04-07T00:00:00+00:00",{"id":11,"name":81,"slug":82,"color":83,"icon":84},"Self-hosting","self-hosting","bg-indigo-500\u002F10 text-indigo-400","cloud",[86],{"id":11,"name":81,"slug":82,"color":83,"icon":84},"\u002Fblog\u002Fcovers\u002Fheberger-gitea-poster.svg",{"categorySlug":89,"appSlug":90},"developpement","gitea",{"id":92,"slug":93,"title":94,"excerpt":95,"readTime":11,"views":96,"isPinned":13,"publishedAt":97,"category":98,"categories":99,"featuredImage":22,"bgImage":23,"posterImage":101,"relatedSolution":102},75,"heberger-forgejo","Héberger Forgejo sur votre propre VPS","Installez Forgejo, le fork communautaire de Gitea, sur votre VPS avec Docker et SSL. Forge Git souveraine et 100% libre.",575,"2026-04-06T00:00:00+00:00",{"id":11,"name":81,"slug":82,"color":83,"icon":84},[100],{"id":11,"name":81,"slug":82,"color":83,"icon":84},"\u002Fblog\u002Fcovers\u002Fheberger-forgejo-poster.svg",{"categorySlug":82,"appSlug":103},"forgejo",{"id":105,"slug":106,"title":107,"excerpt":108,"readTime":109,"views":12,"isPinned":13,"publishedAt":110,"category":111,"categories":112,"featuredImage":22,"bgImage":23,"posterImage":114,"relatedSolution":115},149,"heberger-n8n-vps","Comment héberger n8n sur un VPS","Déployez n8n sur votre VPS pour automatiser vos workflows entre applications, 100 % auto-hébergé, avec Docker, reverse proxy et HTTPS. Guide pas à pas.",8,"2026-01-27T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":18},[113],{"id":16,"name":17,"slug":18,"color":19,"icon":18},"\u002Fblog\u002Fcovers\u002Fheberger-n8n-vps-poster.svg",{"categorySlug":18,"appSlug":116},"n8n",1785671428799]