Ce site est construit avec Jekyll.
N.B. : Jekyll est construit en Ruby.
Nous ne sommes pas développeurs Ruby et nous découvrons son écosystème.
Il se peut que les instructions ci-dessous semblent mauvaises à une personne connaissant bien Ruby 🙏
-
Installer les pré-requis Jekyll (suivre les pages détaillées de prérequis pour chaque OS)
-
Installer
bundler
$ gem install bundler -V
- Installer les dépendances de ce projet
$ cd front
$ bundler install
-
Créer un fichier de variables d'environnement pour le backend, en se basant sur le fichier
back/.env.template
-
Démarrer le conteneur de base de données
$ docker compose up db
- Se connecter au conteneur de la base de données et créer une nouvelle base
msc
pour un utilisateur postgres.
$ docker compose exec db createdb -U postgres msc
- Revenir à la racine, installer les dépendances Node et lancer le projet en mode "dev"
$ cd ..
$ npm run installe-tout
$ npm run dev
- Arrivé ici, le site doit être consultable sur http://127.0.0.1:3000
On utilise un unique Dockerfile
pour le build via CI/CD et l'hébergement sur notre PaaS.
Le Dockerfile
unique est la solution qui semble la plus simple.
Certaines variables d'environnement sont nécessaires au moment de la construction du site statique (avec Jekyll).
Pour ce faire, ces variables sont passées via les --build-arg
par CleverCloud. On peut donc les utiliser dans notre Dockerfile.
Exemple :
ARG MA_VARIABLE
RUN echo "MA_VARIABLE=${MA_VARIABLE}" >> .env
Ces variables sont passées à Jekyll via le plugin jekyll-dotenv