Installation · 6 min read · Oct 18, 2025

Comment installer le système de page de statut Cachet sur Debian 9

Cachet est un beau et puissant système de page de statut open source écrit en PHP qui vous permet de mieux communiquer les temps d’arrêt et les pannes système à vos clients, équipes et actionnaires. L’application vous offre de nombreuses fonctionnalités, les plus notables étant : une API JSON puissante, des rapports d’incidents, des métriques, un support Markdown pour les messages d’incidents, des notifications par email pour les abonnés, et l’authentification à deux facteurs. Dans ce tutoriel, nous allons installer le système de page de statut Cachet en utilisant PHP, Nginx, MariaDB et Composer.

Exigences

  • Version PHP 5.5.9 ou supérieure
  • Serveur HTTP avec support PHP (ex : Nginx, Apache, Caddy)
  • Composer
  • Une base de données supportée : MySQL, PostgreSQL ou SQLite

Prérequis

  • Un serveur exécutant Debian 9.
    Un utilisateur non-root avec des privilèges sudo.

Étapes initiales

Vérifiez la version de Debian :

lsb_release -ds  
# Debian GNU/Linux 9.5 (stretch)

Configurez le fuseau horaire :

timedatectl list-timezones  
sudo timedatectl set-timezone 'Region/City'

Mettez à jour les paquets de votre système d’exploitation :

sudo apt update && sudo apt upgrade -y

Installez les paquets vim, git et socat :

sudo apt install -y vim git socat sudo

Étape 1 - Installer PHP

Installez PHP et les extensions PHP requises :

sudo apt install -y php7.0 php7.0-cli php7.0-fpm php7.0-common php7.0-xml php7.0-gd php7.0-zip php7.0-mbstring php7.0-mysql php7.0-pgsql php7.0-sqlite3 php7.0-mcrypt php-apcu

Vérifiez la version de PHP :

php --version  
# PHP 7.0.30-0+deb9u1 (cli) (built: Jun 14 2018 13:50:25) ( NTS )

Étape 2 - Installer MariaDB et créer une base de données pour Cachet

Cachet prend en charge les bases de données MySQL/MariaDB, PostgreSQL et SQLite3. Dans ce tutoriel, nous allons utiliser MariaDB comme serveur de base de données.

Installez le serveur de base de données MariaDB :

sudo apt install -y mariadb-server

Vérifiez la version de MariaDB :

mysql --version  
# mysql  Ver 15.1 Distrib 10.1.26-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

Exécutez le script mysql_secure_installation pour améliorer la sécurité de MariaDB et définir le mot de passe pour l’utilisateur MySQL root :

sudo mysql_secure_installation

Répondez à chacune des questions :

Entrez le mot de passe actuel pour root (appuyez sur Entrée pour aucun) : Appuyez sur Entrée  
Définir le mot de passe root ? [Y/n] Y  
Nouveau mot de passe : votre_mot_de_passe_sécurisé  
Ressaisissez le nouveau mot de passe : votre_mot_de_passe_sécurisé  
Supprimer les utilisateurs anonymes ? [Y/n] Y  
Interdire la connexion root à distance ? [Y/n] Y  
Supprimer la base de données de test et l'accès à celle-ci ? [Y/n] Y  
Recharger les tables de privilèges maintenant ? [Y/n] Y

Connectez-vous à l’interface de commande MySQL en tant qu’utilisateur root :

mysql -u root -p  
# Entrez le mot de passe  

Créez une base de données MariaDB vide et un utilisateur pour Cachet et retenez les identifiants :

MariaDB [(none)]> CREATE DATABASE dbname;  
MariaDB [(none)]> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';  
MariaDB [(none)]> FLUSH PRIVILEGES;

Quittez MariaDB :

MariaDB [(none)]> exit

Remplacez dbname, username et password par vos propres noms.

Étape 3 - Installer le client Acme.sh et obtenir un certificat Let’s Encrypt (optionnel)

Sécuriser votre page de statut avec HTTPS n’est pas nécessaire, mais c’est une bonne pratique de sécuriser le trafic de votre site. Afin d’obtenir un certificat SSL de Let’s Encrypt, nous allons utiliser le client Acme.sh. Acme.sh est un logiciel shell pur unix pour obtenir des certificats SSL de Let’s Encrypt sans dépendances.

Téléchargez et installez Acme.sh :

sudo mkdir /etc/letsencrypt  
git clone https://github.com/Neilpang/acme.sh.git  
cd acme.sh   
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail [email protected]  
cd ~

Vérifiez la version d’Acme.sh :

/etc/letsencrypt/acme.sh --version  
# v2.8.0

Obtenez des certificats RSA et ECC/ECDSA pour votre domaine/nom d’hôte :

# RSA 2048  
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d status.example.com --ocsp-must-staple --keylength 2048  
# ECDSA  
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d status.example.com --ocsp-must-staple --keylength ec-256

Après avoir exécuté les commandes ci-dessus, vos certificats et clés seront dans :

  • Pour RSA : le répertoire /etc/letsencrypt/status.example.com.
  • Pour ECC/ECDSA : le répertoire /etc/letsencrypt/status.example.com_ecc.

Étape 4 - Installer et configurer Nginx

Cachet peut fonctionner correctement avec de nombreux serveurs web. Dans ce tutoriel, nous avons sélectionné Nginx.

Installez Nginx :

sudo apt install -y nginx

Vérifiez la version de Nginx :

sudo nginx -v  
# nginx version: nginx/1.10.3

Configurez Nginx pour Cachet en exécutant :

sudo vim /etc/nginx/sites-available/cachet.conf

Et remplissez le fichier avec la configuration suivante :

server {  
  listen 80;  
  listen [::]:80;  
  server_name status.example.com;  
  root /var/www/cachet/public;  
  index index.php;  
  ssl_certificate /etc/letsencrypt/status.example.com/fullchain.cer;  
  ssl_certificate_key /etc/letsencrypt/status.example.com/status.example.com.key;  
  ssl_certificate /etc/letsencrypt/status.example.com_ecc/fullchain.cer;  
  ssl_certificate_key /etc/letsencrypt/status.example.com_ecc/status.example.com.key;  
  location / {  
    try_files $uri /index.php$is_args$args;  
  }  
  location ~ \.php$ {  
    include fastcgi_params;  
    fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;  
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;  
    fastcgi_index index.php;  
    fastcgi_keep_conn on;  
  }  
}

Activez la nouvelle configuration cachet.conf en liant le fichier au répertoire sites-enabled :

sudo ln -s /etc/nginx/sites-available/cachet.conf /etc/nginx/sites-enabled/

Testez la configuration NGINX :

sudo nginx -t

Rechargez Nginx :

sudo systemctl reload nginx.service

Étape 5 - Installer Composer

Installez Composer, le gestionnaire de dépendances PHP, globalement :

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"  
php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer vérifié'; } else { echo 'Installer corrompu'; unlink('composer-setup.php'); } echo PHP_EOL;"  
php composer-setup.php  
php -r "unlink('composer-setup.php');"  
sudo mv composer.phar /usr/local/bin/composer

Vérifiez la version de Composer :

composer --version  
# Composer version 1.7.2 2018-08-16 16:57:12

Étape 6 - Installer Cachet

Créez un répertoire racine de documents où Cachet doit résider :

sudo mkdir -p /var/www/cachet  

Naviguez vers le répertoire racine de documents :

cd /var/www/cachet

Téléchargez le code source de Cachet avec Git et passez à la dernière version taguée :

git clone https://github.com/cachethq/Cachet.git .  
git tag -l  
git checkout v2.3.15

Copiez .env.example dans le fichier .env et configurez les paramètres de base de données et APP_URL dans le fichier .env :

cp .env.example .env  
vim .env

Installez les dépendances de Cachet avec Composer :

composer install --no-dev -o

Configurez la clé de l’application en exécutant :

php artisan key:generate

Installez Cachet :

php artisan app:install

Changez la propriété du répertoire /var/www/cachet à www-data:

sudo chown -R www-data:www-data /var/www/cachet

Ouvrez votre site dans un navigateur web et suivez les instructions à l’écran pour terminer l’installation de Cachet.

Étape 7 - Complétez la configuration de Cachet

Sélectionnez les pilotes de cache et de session et configurez les options de messagerie : Terminer la configuration de Cachet

Configurez les paramètres généraux du site comme le nom du site, le domaine du site, le fuseau horaire et la langue : Paramètres généraux de Cachet

Créez un compte utilisateur administratif : Ajouter un compte admin

Après cela, vous devriez recevoir un message indiquant que Cachet a été configuré avec succès. Vous pouvez ouvrir le tableau de bord de Cachet en appuyant sur le bouton “Aller au tableau de bord” : Cachet a été installé avec succès

L’installation et la configuration de Cachet sont terminées.
Pour accéder au tableau de bord de Cachet, ajoutez /dashboard à l’URL de votre site.

Tableau de bord Cachet

Liens

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.