Toi aussi, déploie le site Geotribu chez toi#
Date de publication initiale : 30 décembre 2020
Pré-requis : une connexion internet.
Trop tard !
La méthode présentée ici ne fonctionne plus depuis cette PR de mai 2023 qui a basculé le déploiement du site sur les GitHub Pages hors de la branche gh-pages
.
Intro#
A l'instar de nombreux sites webs, Geotribu est un site statique, cela signifie :
- qu'il n'y a pas de base de données,
- que les appels au serveur web ne sont que des
GET
- que ce dernier ne fait que retourner des fichiers HTML, CSS, JavaScript et les éventuels contenus binaires (images...).
C'est un gage de plein de mots-clés : légèreté, réactivité, faible maintenance, bonne résilience et sécurité.
Mais c'est surtout un bon moyen de jouer avec un site web sans se casser la tête !
Pour mieux se rendre compte de la légèreté et de la facilité des sites statiques, faisons un exercice simple de mise en pratique : déployons le site actuel de Geotribu sur notre ordinateur en 2 étapes.
1. Télécharger le site de production#
Commençons par télécharger la dernière version du site en production et dézipper le tout.
Pour les personnes facturées au clic sur les interfaces graphiques, voici la petite commande qui va bien :
On peut déjà observer que le site ne pèse que ~25 Mo compressé et ~110 Mo décompressé, pour un contenu de presque 600 pages (articles, revues de presse, guides de contribution, pages d'équipe, etc.). Et encore, le fichier d'index de la recherche (search/search_index.json
) pèse à lui seul près de 50 Mo.
jmo@jmoslandia:/tmp/website-gh-pages$ ls -al .
total 496
drwxrwxr-x 14 jmo jmo 4096 déc. 29 19:39 .
drwxrwxrwt 30 root root 12288 déc. 30 13:06 ..
-rw-rw-r-- 1 jmo jmo 143384 déc. 29 19:39 404.html
drwxrwxr-x 2 jmo jmo 4096 déc. 29 19:39 acknowledgements
drwxrwxr-x 12 jmo jmo 4096 déc. 29 19:39 articles
drwxrwxr-x 5 jmo jmo 4096 déc. 29 19:39 assets
-rw-rw-r-- 1 jmo jmo 19 déc. 29 19:39 CNAME
drwxrwxr-x 9 jmo jmo 4096 déc. 29 19:39 contribuer
drwxrwxr-x 2 jmo jmo 4096 déc. 29 19:39 dicogis
-rw-rw-r-- 1 jmo jmo 42105 déc. 29 19:39 feed_rss_created.xml
-rw-rw-r-- 1 jmo jmo 40284 déc. 29 19:39 feed_rss_updated.xml
-rw-rw-r-- 1 jmo jmo 102918 déc. 29 19:39 index.html
drwxrwxr-x 2 jmo jmo 4096 déc. 29 19:39 install_webapp
-rw-rw-r-- 1 jmo jmo 442 déc. 29 19:39 manifest.webmanifest
drwxrwxr-x 14 jmo jmo 4096 déc. 29 19:39 node
-rw-rw-r-- 1 jmo jmo 0 déc. 29 19:39 .nojekyll
drwxrwxr-x 13 jmo jmo 4096 déc. 29 19:39 rdp
-rw-rw-r-- 1 jmo jmo 97 déc. 29 19:39 robots.txt
drwxrwxr-x 2 jmo jmo 4096 déc. 29 19:39 rss
-rw-rw-r-- 1 jmo jmo 116 déc. 29 19:39 rss.xml
drwxrwxr-x 2 jmo jmo 4096 déc. 29 19:39 search
-rw-rw-r-- 1 jmo jmo 81602 déc. 29 19:39 sitemap.xml
-rw-rw-r-- 1 jmo jmo 2656 déc. 29 19:39 sitemap.xml.gz
drwxrwxr-x 16 jmo jmo 4096 déc. 29 19:39 team
drwxrwxr-x 3 jmo jmo 4096 déc. 29 19:39 theme
jmo@jmoslandia:/tmp/website-gh-pages$ du -sh .
112M .
jmo@jmoslandia:/tmp/website-gh-pages$ du -sh search/
47M search/
Evidemment, ce dossier ne contient pas les images, hébergées sur un serveur à part et sauvegardées mensuellement en tant que release sur GitHub. A titre d'exemple, la sauvegarde de novembre pèse 422 Mo.
2. Servir le site#
En ouvrant simplement le fichier index.html
, on voit déjà apparaître la page d'accueil dans son navigateur par défaut. Mais le site étant configuré pour avoir des URLs correspondant au titre de la page sans l'extension .html
, la navigation n'est donc pas fonctionnelle, le navigateur se comportant davantage comme un explorateur de fichiers.
Si on veut avoir le site pleinement fonctionnel, il suffit donc de "servir" le dossier par un... serveur web . Parce-que déployer un serveur web n'est pas du tout le sujet, utilisons les outils minimalistes intégrés à de nombreux langages :
Avec bash :
Avec Powershell :
$ npx serve -l 8085
npx : 78 installé(s) en 3.27s
┌──────────────────────────────────────────────────┐
│ │
│ Serving! │
│ │
│ - Local: http://localhost:8085 │
│ - On Your Network: http://192.168.1.25:8085 │
│ │
│ Copied local address to clipboard! │
│ │
└──────────────────────────────────────────────────┘
Ouvrir le navigateur sur l'adresse http://localhost:8085 et vous devriez avoir le site en local, pleinement fonctionnel. Si les images n'apparaissent pas, c'est que vous n'accédez pas à https://cdn.geotribu.fr.
Et voilà, vous avez le site Geotribu sur votre ordinateur !
Auteur·ice#
Julien MOURA#
Géographe "sigiste" de formation, j'ai travaillé sur différentes thématiques et types de structures : gestion des déchets en milieu urbain à Madagascar, foncier d'intérêt général auprès de l'EPF de La Réunion, organisation et la résilience urbaine face aux risques naturels à Lima pour l'IRD, gouvernance et ouverture des données à Isogeo.
Je travaille désormais à Oslandia.
Féru des dynamiques de contributions, je participe activement à Geotribu depuis fin 2011.
Commentaires
Une version minimale de la syntaxe markdown est acceptée pour la mise en forme des commentaires.
Propulsé par Isso.
Ce contenu est sous licence Creative Commons BY-NC-SA 4.0 International