Aller au contenu

Infrastructure

Résumé des sections 1 à 4 du Guide des systèmes informatiques : LCL Environnement (C. Bolduc, été 2026). Aucune connaissance technique n'est nécessaire pour lire cette page.

Vue d'ensemble en une image

Tout roule sur un seul ordinateur loué chez DigitalOcean, allumé 24 h/24. Plusieurs logiciels y tournent en même temps, chacun dans sa « boîte » séparée. Coolify joue le rôle de gestionnaire d'immeuble : il installe les boîtes, les redémarre, les met à jour et dirige les visiteurs vers la bonne porte.

flowchart TB
    Internet --> Domaine["lclchantiers.com<br/>(nom de domaine)"]
    Domaine --> Droplet["Droplet DigitalOcean"]
    subgraph Droplet["Droplet DigitalOcean"]
        Coolify["Coolify (le gestionnaire)"]
        Coolify --> ODK["ODK Central"]
        Coolify --> Rapports["Application rapports"]
        Coolify --> LabTracker["LabTracker"]
        Coolify --> Autres["(autres projets)"]
    end

Le serveur : le « droplet » DigitalOcean

Un droplet est un ordinateur loué au mois chez DigitalOcean. Il n'a ni écran ni clavier : on s'y connecte à distance. Il roule Linux (Ubuntu). C'est ce qui permet à nos applications d'être accessibles en tout temps, sans dépendre d'un ordinateur au bureau.

  • La facture est mensuelle ; si elle n'est pas payée, tout tombe.
  • L'accès se fait via le compte DigitalOcean de l'entreprise : quelqu'un chez LCL doit en conserver les identifiants.
  • DigitalOcean peut prendre des snapshots (photos complètes du serveur) : c'est le filet de sécurité pour revenir en arrière en cas de pépin.

Un seul point de panne

Tout est sur une seule machine. Si le droplet tombe, tous les services tombent en même temps. C'est acceptable pour notre taille, mais ça veut dire que les sauvegardes sont critiques.

Le nom de domaine : lclchantiers.com

Un nom de domaine est une adresse lisible par des humains : sans lui, il faudrait taper l'adresse IP du serveur. On utilise des sous-domaines, comme les numéros de porte d'un même immeuble :

Adresse Ce qu'on y trouve
odk.lclchantiers.com ODK Central : gestion des formulaires terrain
rapports.lclchantiers.com Application de génération de rapports PDF
echantillons.lclchantiers.com LabTracker : suivi des échantillons au labo
(voir les pages projets) Les autres services

Chaque sous-domaine est enregistré dans le DNS, l'annuaire mondial qui dit « odk.lclchantiers.com, c'est cet ordinateur-là ». Cet annuaire se configure chez le fournisseur où lclchantiers.com a été acheté.

Pour ajouter un nouveau service accessible sur Internet, il faut :

  1. Créer une entrée DNS (un enregistrement A) qui pointe le sous-domaine vers l'adresse du droplet.
  2. Indiquer ce sous-domaine dans Coolify pour le service concerné.

Coolify : le gestionnaire des applications

Coolify installe, démarre, arrête et met à jour toutes nos applications, via une interface web, l'équivalent gratuit et auto-hébergé de services comme Heroku ou Vercel. Avant, chaque application était installée « à la main » directement sur le serveur : fragile, et seule la personne qui l'avait montée pouvait s'y retrouver. Avec Coolify, une mise à jour se résume à pousser le code sur GitHub, puis cliquer sur Redeploy (ou rien du tout si l'automatique est activé).

Les concepts de Coolify

Concept Ce que c'est
Projet Un regroupement logique (ex. tout ce qui touche LabTracker)
Application (ressource) Un logiciel qui roule, relié à un dépôt GitHub
Base de données Coolify peut aussi héberger les bases PostgreSQL des applications
Déploiement Mettre en ligne la dernière version du code ; historique consultable, retour en arrière possible
Variables d'environnement Les réglages et mots de passe, stockés dans Coolify et jamais dans le code, pour que le code reste public sur GitHub sans exposer de secret

Caddy : le portier

Coolify utilise Caddy comme réceptionniste : quand quelqu'un tape rapports.lclchantiers.com, c'est Caddy qui reçoit la visite et la redirige vers la bonne application. Caddy gère aussi automatiquement les certificats HTTPS (le cadenas du navigateur), renouvelés sans intervention.

Le quotidien avec Coolify

Je veux… Comment faire
Voir si un service roule Ouvrir Coolify, regarder le statut de l'application (vert = OK)
Comprendre pourquoi ça plante Onglet Logs de l'application
Mettre à jour une application Pousser le code sur GitHub, puis Redeploy
Annuler une mise à jour ratée Historique des déploiements → redéployer la version précédente
Changer un mot de passe / un réglage Onglet Environment Variables, puis redéployer

Warning

Modifier une variable d'environnement ne prend effet qu'après un redéploiement.