Aller au contenu

Mkdoc forgejo

Flux MkDocs + Forgejo

  1. Répertoire local / dépôt Forgejo
/home/alexis/mkdocs
├─ docs/
└─ mkdocs.yml
  • Tu ajoutes/modifies des fichiers Markdown.
  • Push vers Forgejo :

    git add .
    git commit -m "ajout"
    git push origin main
    
  • Mode développement local

  • Serveur local pour tester en live :

    mkdocs serve -a 0.0.0.0:8000
    
    * Accès depuis un navigateur : http://localhost:8000

  • Génération des pages statiques

mkdocs build
  • Le résultat est dans site/ → prêt pour le déploiement.

  • Déploiement automatisé via Forgejo Actions

  • Workflow déclenché sur push → container éphémère Docker :

    1. Checkout du dépôt (fichiers modifiés uniquement).
    2. Installation de MkDocs + dépendances.
    3. Build du site (mkdocs build).
    4. Copie des fichiers statiques sur le serveur web (rsync vers /var/www/docs.mondomaine.tld).
  • Serveur web

  • Nginx sert le contenu statique depuis /var/www/docs.mondomaine.tld.

  • Configuration basique : try_files $uri $uri/ =404 + cache des assets statiques.

💡 Optimisations possibles

  • rsync avec -u --delete pour ne copier que les fichiers modifiés.
  • Workflow déclenché uniquement sur modification de fichiers .md pour éviter un build complet inutile.
  • Visualisation rapide locale avec mkdocs serve avant commit.