Ce site
Ce portail est un site statique MkDocs Material, versionné dans le repo
Forgejo leon/docs, construit par le
Dockerfile à la racine (MkDocs → nginx) et déployé par Coolify à chaque
push sur main. La CI Woodpecker exécute mkdocs build --strict : un lien
mort fait échouer le build.
Ajouter la doc d'un projet
Exemple avec une app korean (app mobile d'apprentissage du coréen) :
-
Créer un dossier
docs/korean/avec au minimum unindex.md:docs/ ├── index.md ├── infra/… └── korean/ └── index.md -
Déclarer la section dans le
nav:demkdocs.yml:yaml nav: - Accueil: index.md - Infra: … - Korean (app mobile): - Vue d'ensemble: korean/index.md - Ce site: ce-site.md -
Ajouter le projet au tableau de la page d'accueil (
docs/index.md). - Commit + push : la CI vérifie, Coolify redéploie, la section apparaît.
Où écrire la doc ?
La doc vit ici, pas dans le repo de l'app. Dans le repo de l'app,
garder un README.md court qui pointe vers ce site.
Prévisualiser en local
cd ~/projets/docs
sudo docker run --rm -p 8001:8000 -v "$PWD:/docs" squidfunk/mkdocs-material:9
# puis ouvrir http://localhost:8001
Déploiement (mise en place Coolify, une seule fois)
Application Coolify de type Private Repository (with deploy key) :
| Champ | Valeur |
|---|---|
| Repository URL | ssh://git@10.9.73.81:2222/leon/docs.git |
| Branch | main |
| Build Pack | Dockerfile |
| Base Directory | / |
| Dockerfile Location | /Dockerfile |
| Ports Exposes | 80 |
| Domains | https://docs.leonheu.fr (wildcard *.leonheu.fr OVH → Coolify, DNS dynamique) |
Côté Forgejo (repo leon/docs → Paramètres) :
- Clés de déploiement : ajouter la clé publique générée par Coolify (lecture seule).
- Webhooks : ajouter l'URL « Manual Git Webhook » de Coolify (+ son
secret), événements de push sur
main→ redéploiement automatique.