Ceci est une ancienne révision du document !
# Création d'un site avec Publii et PLMlab
—
## Qu'est-ce que Publii ?
Publii est un logiciel (CMS) open-source qui permet de créer des sites web statiques.
Contrairement aux CMS classiques (comme WordPress), il ne nécessite pas de serveur dynamique ni de base de données : le site est généré en fichiers HTML, CSS et JavaScript, puis déployé facilement (GitHub Pages, Netlify, etc.).
👉 Avantages :
* rapide * sécurisé * simple à héberger
Lien de télechargement → https://getpublii.com/download/
—
## Qu'est-ce que PLMlab ?
PLMlab est une plateforme de type GitLab mise à disposition par le CNRS pour la communauté des mathématiques.
C’est une forge logicielle qui permet de :
* héberger du code (Git) * collaborer sur des projets * faire de l’intégration continue (CI/CD) * héberger des sites web (GitLab Pages)
—
## 📖 Glossaire
* Site public : accessible à tout le monde sur Internet, sans authentification (ex : une page professionnelle visible par tous).
* Site privé : accessible uniquement à des utilisateurs autorisés (connexion requise, accès restreint).
* Repository (repo) : espace de stockage d’un projet (code, fichiers, historique).
👉 En pratique, **le repo correspond au nom du projet**.
—
## Étape 1 — Préparer le dépôt PLMlab
1. Créer un nouveau repository sur PLMlab (public ou privé) 2. Générer un Access Token :
- Aller dans Settings → Access Tokens
- Créer un token avec les droits Owner et api
- ⚠️ Attention : le token est limité à 4 semaines par défaut
- Copier le token (il ne sera plus visible après)
—
## Étape 2 — Configurer Publii
1. Lancer Publii 2. Aller dans :
- *Server → GitLab Pages 3. Configurer comme suit : ``` Website URL : https://[compte-mathrice].pages.math.cnrs.fr/[nom-du-repo]/ Server : https://plmlab.math.cnrs.fr/ Repository : monrepository Branch : main Token :
```
4. Sauvegarder les paramètres
5. Lancer une première synchronisation
- Cela envoie les fichiers vers PLMlab
- Le dossier `public/` apparaît dans le repo
—
## Étape 3 — Générer le fichier `.gitlab-ci.yml`
1. Dans PLMlab, aller dans Deploy → Pages 2. Suivre l'assistant :
- Step 1 : image Docker → `alpine:latest`
- Step 2 : Installation → laisser vide
- Step 3 : Build command → `echo “Deploying static site”`
3. Valider → le fichier `.gitlab-ci.yml` est automatiquement créé
Exemple :
```yaml image: alpine:latest
create-pages:
script: - echo "Deploying static site" pages: publish: public rules: - if: $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH
```
—
## Étape 4 — Attendre la fin du pipeline
1. Aller dans Build → Pipelines 2. Attendre que le pipeline soit ✅ Passed
—
## Étape 5 — Désactiver le domaine unique
1. Aller dans Deploy → Pages → Domains & Settings 2. Décocher la case “Use unique domain” 3. Cliquer sur Save changes 4. Copier l'URL du site (ex :
`https://fdiaoune.pages.math.cnrs.fr/monsiteweb`)
### ❓ Pourquoi ?
Si l’option est activée, l’URL change à chaque déploiement :
``` fdiaoune-monsiteweb-abc123.pages.math.cnrs.fr ```
👉 Problème : Publii a besoin d’une URL fixe pour générer correctement :
* les liens * les images * le CSS
➡️ Il faut donc une URL stable
—
## Étape 6 — Mettre à jour Publii
1. Retourner dans Publii → Server settings 2. Remplacer Website URL par l’URL finale 3. Relancer une synchronisation
🎉 Le site est maintenant en ligne !
—
## ⚠️ Important — Délai de mise à jour
Les changements ne sont pas instantanés.
À chaque synchronisation :
* un pipeline CI/CD est lancé * délai : quelques secondes à quelques minutes
👉 Suivi : Build → Pipelines
—
## 💡 Astuce
Pour voir vos modifications immédiatement :
👉 Bouton “Preview your changes” dans Publii
Cela ouvre le site en local (`file:/…`) avec : * styles OK * images OK * navigation OK