Outils pour utilisateurs

Outils du site


systeme_de_page_d_etat_cachet

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

systeme_de_page_d_etat_cachet [2021/05/08 13:25] (Version actuelle)
Ligne 1: Ligne 1:
 +====== Cachet ======
 +
 +Présentation d'installation d'un service de statut Cachet sur //debian// 9.\\ 
 +Dans cette présentation, nous allons configurer un site https://status.sleto.net.\\ 
 +
 +Nous utiliserons les variables //DBNAME//, //DBUSER// et //DBPASSWD// respectivement pour le nom, l'utilisateur et le mot de passe de base de données.\\  
 +
 +Cachet sera installé dans ///opt/cachet//
 +
 +===== Dépendances =====
 +
 +Utilise PHP 7.1 via fpm ainsi qu'un [[Serveur web sécurisé (Nginx / Let's Encrypt)]].\\ 
 +<code>sudo apt-get install -y php7.1-fpm php7.1-cli php7.1-curl php7.1-xml php7.1-pgsql php7.1-mbstring php7.1-gd php7.1-mcrypt</code>
 +
 +Nécessite également les outils :
 +<code>sudo apt-get install -y postgresql postgresql-contrib git</code>
 +
 +Vous devrez également ajouter le domaine __status.sleto.net__ dans le [[Serveur DNS (bind9)]]
 +===== Base de données =====
 +
 +Nous allons créé une base de donnée PostgreSQL:
 +
 +<code>sudo -u postgres psql -c "CREATE USER $DBUSER;"
 +sudo -u postgres psql -c "ALTER USER $DBUSER PASSWORD '$DBPASSWD';"
 +sudo -u postgres psql -c "CREATE DATABASE $DBNAME OWNER $DBUSER;"</code>
 +
 +===== Installation =====
 +
 +Installation de l'outil:
 +
 +<code>
 +git clone https://github.com/cachethq/Cachet.git /opt/cachet
 +cd /opt/cachet
 +git checkout v2.3.18
 +useradd --home /opt/cachet --shell /bin/bash cachet
 +chown -R cachet:www-data *
 +chmod -R o-rwx *
 +chmod -R g+w *
 +</code>
 +
 +===== Configuration =====
 +
 +Écrire le fichier ///opt/cachet/.env// (attention de bien remplacer $DBNAME, $DBUSER et $DBPASSWD):
 +<code>
 +APP_ENV=production
 +APP_DEBUG=false
 +APP_URL=http://status.sleto.net
 +APP_KEY=2A7E7B1D0F54CE0B
 +
 +DB_DRIVER=pgsql
 +DB_HOST=localhost
 +DB_DATABASE=$DBNAME
 +DB_USERNAME=$DBUSER
 +DB_PASSWORD=$DBPASSWD
 +DB_PORT=5432
 +DB_PREFIX=null
 +
 +CACHE_DRIVER=file
 +SESSION_DRIVER=file
 +QUEUE_DRIVER=sync
 +CACHET_EMOJI=false
 +
 +MAIL_DRIVER=smtp
 +MAIL_HOST=localhost
 +MAIL_PORT=25
 +MAIL_USERNAME=null
 +MAIL_PASSWORD=null
 +MAIL_ADDRESS=null
 +MAIL_NAME=null
 +MAIL_ENCRYPTION=null
 +
 +REDIS_HOST=null
 +REDIS_DATABASE=null
 +REDIS_PORT=null
 +
 +GITHUB_TOKEN=null
 +</code>
 +
 +Et lancer la configuration:
 +<code>
 +cd /opt/cachet
 +composer install --no-interaction --no-dev -o --no-scripts
 +php7.1 artisan app:install
 +rm -rf bootstrap/cache/*
 +</code>
 +
 +Et finaliser en ajoutant le //crontab// sur l'utilisateur //cachet//:
 +<code>
 +* * * * * php7.1 /opt/cachet/artisan schedule:run >> /dev/null 2>&1
 +</code>
 +
 +===== Configuration web =====
 +
 +Ecrire le fichier ///opt/cachet/nginx-status//:
 +<code>
 +server {
 +    listen 80;
 +    server_name status.sleto.net;
 +    return 301 https://$host$request_uri;
 +}
 +
 +server {
 +    listen 443 ssl;
 +    server_name status.sleto.net;
 +    access_log /var/log/nginx/cloud.status.net.access.log;
 +    error_log  /var/log/nginx/cloud.status.net.error.log;
 +
 +    include /opt/ssl/status.sleto.net.conf;
 +    
 +    location / {
 +         try_files $uri $uri/ /index.php?q=$uri&$args;
 +    }
 +
 +    location ~ \.php$ {
 +        include snippets/fastcgi-php.conf;
 +        fastcgi_pass unix:/run/php/php7.1-fpm.sock;
 +    }    
 +}    
 +</code>
 +
 +Notons que ///opt/ssl/status.sleto.net.conf// contiendra les informations relatives aux clefs privé et public HTTPS/SSL (voir [[Serveur web sécurisé (Nginx / Let's Encrypt)]]).
 +
 +Activer la configuration web par:
 +<code>ln -sf /opt/cachet/nginx-status /etc/nginx/sites-enabled</code>
 +
 +===== Rechargement =====
 +
 +Pour rafraîchir les services fpm, mariadb et nginx
 +<code>
 +service nginx reload   
 +</code>
  
systeme_de_page_d_etat_cachet.txt · Dernière modification: 2021/05/08 13:25 (modification externe)