<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Partie 1 : Déployer une application :: Teknolabs</title>
    <link>https://teknolabs.net/courses/devops-cloud/partie-1-deploiement-application/index.html</link>
    <description>Déployer une même application (portfolio Next.js) de trois façons : automatisation Ansible, PaaS auto-hébergé, pipeline CI/CD cloud.&#xA;TP Outil(s) Approche TP1 Ansible + Semaphore UI Infrastructure as Code (playbooks, rôles, interface d’exécution) TP2 Coolify + Forgejo PaaS auto-hébergé (alternative à Heroku / Netlify / Vercel) avec forge Git locale et redéploiement par webhook TP3 GitHub Actions + Render Intégration continue (vérification des pull requests, ruleset) et déploiement continu après CI, avec prévisualisations Prérequis : Aucun. Une VM vierge par TP : le TP1 installe Nginx (ports 80/443), que Coolify veut gérer lui-même.</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <atom:link href="https://teknolabs.net/courses/devops-cloud/partie-1-deploiement-application/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>TP1 : Déploiement d&#39;un Portfolio Next.js avec Ansible et Semaphore UI</title>
      <link>https://teknolabs.net/courses/devops-cloud/partie-1-deploiement-application/tp1-ansible-semaphore/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://teknolabs.net/courses/devops-cloud/partie-1-deploiement-application/tp1-ansible-semaphore/index.html</guid>
      <description>1. Objectifs pédagogiques À l’issue du TP, vous serez capable de :&#xA;écrire un playbook Ansible idempotent, structuré en rôles ; automatiser le déploiement d’une application Next.js sur un serveur Linux ; industrialiser l’exécution avec Semaphore UI (inventaire, dépôt, clés, templates). Fichiers de départ : portfolio-deploy.zip&#xA;2. Prérequis Élément Détail Serveur cible Ubuntu 24.04 (VM ou conteneur), accès SSH par clé Poste de contrôle Ansible ≥ 2.15, Git Semaphore UI Instance fonctionnelle (Docker) Application Portfolio Next.js dans un dépôt Git (fourni ou personnel) Vérification rapide : ansible --version · ssh deploy@&lt;IP&gt; · accès à http://&lt;IP-semaphore&gt;:3000.</description>
    </item>
    <item>
      <title>TP2 : Déploiement d&#39;un Portfolio Next.js avec Coolify et Forgejo</title>
      <link>https://teknolabs.net/courses/devops-cloud/partie-1-deploiement-application/tp2-coolify/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://teknolabs.net/courses/devops-cloud/partie-1-deploiement-application/tp2-coolify/index.html</guid>
      <description>Coolify : alternative open source et auto-hébergeable à Heroku, Netlify et Vercel. Forgejo : forge Git auto-hébergée (alternative à GitHub). Ce TP s’exécute entièrement en local, dans une machine virtuelle : ni domaine DNS, ni compte GitHub.&#xA;Fichiers de départ : forgejo.zip&#xA;1. Objectifs pédagogiques À l’issue du TP, vous serez capable de :&#xA;installer Coolify et Forgejo dans une VM locale ; déployer une application Next.js depuis un dépôt Forgejo, accessible par un nom d’hôte local ; mettre en place un webhook Forgejo → Coolify : chaque git push redéploie automatiquement l’application ; pratiquer le rollback et comparer l’approche PaaS (Coolify) avec l’approche IaC du TP1. 2. Présentation des outils Coolify est un PaaS auto-hébergé : il gère pour vous le build, le déploiement, le proxy inverse et les bases de données via une interface web. Forgejo héberge vos dépôts Git et appelle Coolify par webhook à chaque push, comme le ferait GitHub.</description>
    </item>
    <item>
      <title>TP3: CI/CD with GitHub Actions and Render</title>
      <link>https://teknolabs.net/courses/devops-cloud/partie-1-deploiement-application/tp3-github-actions-render/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://teknolabs.net/courses/devops-cloud/partie-1-deploiement-application/tp3-github-actions-render/index.html</guid>
      <description>Clone the starter app The starter includes the Express/TypeScript app, a health endpoint test, TypeScript configuration, and the basic npm scripts.&#xA;Run these commands:&#xA;git clone https://github.com/wahid007/cicd-lab-starter.git cicd-lab cd cicd-lab code . From inside the newly cloned cicd-lab folder, remove the starter’s Git history and remote connection, then initialize your own repository on main. Your app files are preserved.</description>
    </item>
  </channel>
</rss>