Documentation du service WEB - CardinPatson/SysAdmin GitHub Wiki

Organisation des configurations

Les fichiers de configuration du service WEB se trouvent ici https://github.com/CardinPatson/SysAdmin/tree/master/web

Ils sont organisés de la manière suivante :

image

  • Les utilisateurs de la DB sont définis dans le fichier .env
  • Le script de création des tables et insertion des données est dans le fichier schema.sql
  • La configuration des images est dans le fichier docker-compose.yml
  • Le service nginx est configuré dans le fichier default.conf. Ce fichier permet de mettre en place les différents sites web, les ports d'écoutes, les logs des serveurs ainsi que les paramètres de sécurité.
  • La page web pour les clients est index.html
  • La page web pour les revendeurs est index.php

Maintenance

Procédure pour mettre à jour les images:

  1. Choisir dans docker-compose.yml les versions requises (dockerfile pour PHP)

  2. Démarrer les containers à l'aide de l'option --build permet recréer les images en utilisant les dernières versions:

docker-compose up -d --build

Procédure en cas d'ajout d'une nouvelle page web

Copier les fichiers des nouvelles pages web dans l'un des répertoires ci-dessous:

volumes:

            `- ./b2b:/srv/www/api`
            `- ./www:/srv/www/client`

Procédure d'ajout d'un nouveau site web

créer un répertoire pour le nouveau site web: mkdir test

ajouter dans la configuration due serveur web : default.conf la config du nouveau site web : Server { ...

ajouter dans docker-compose.yml une ligne dans volume de nginx ./test:/srv/www/test

recéer un nouveau certificat: certonly --webroot --webroot-path=/var/www/certbot --email [email protected] --agree-tos --no-eff-email -d b2b.m1-3.ephec-ti.be -d www.m1-3.ephec-ti.be test.m1-3.ephec-ti.be

copier le nouveau certicat dans web/docker/certbot/conf

arreter les containers

docker-compose down

demarrer les containers: docker-compose up -d

Troubleshooting

Procédures et collecte d'information

En cas de dysfonctionnement, voici les éléments à observer pour trouver des informations de debug :

  • Logs :

docker-compose logs

Les logs de Nginx:

Pour se connecter sur un container:

docker exec -it <nom_conteneur> /bin/bash

Nginx génère deux types de fichiers log, error et access, dans error on peut trouver les erreurs et dans access l'historique des accès sur les différents site web:

Site b2b:

/etc/nginx/revendeur_error.log

/etc/nginx/revendeur_access.log

Site Client

/etc/nginx/www_error.log

/etc/nginx/www_access.log

Main: /etc/nginx/main_error.log

/etc/nginx/main_access.log

Erreurs fréquentes

  • Oubli de la configuration du SSL au niveau listen du serveur web:

listen 443 ssl http2;