Table des matières

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 :

Lien de téléchargement → 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 :


📖 Glossaire

Terme Définition
Site public Accessible à tout le monde sur Internet, sans authentification.
Site privé Accessible uniquement à des utilisateurs autorisés (connexion requise).
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       : ******************
  1. Sauvegarder les paramètres
  2. 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 :

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

❓ Pourquoi ?

Si l'option est activée, l'URL change à chaque déploiement :

fdiaoune-monsiteweb-abc123.pages.math.cnrs.fr

👉 Publii a besoin d'une URL fixe pour générer correctement les liens, les images et le CSS.


É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 :

👉 Suivi : Build → Pipelines


💡 Astuce

Pour voir vos modifications immédiatement :

👉 Bouton “Preview your changes” dans Publii

Cela ouvre le site en local (file:/…'') avec les styles, images et la navigation fonctionnels.