Vous souhaitez installer la dernière version de GLPI mais sans avoir les contraintes de la gestion d’un serveur apache2/nginx? La solution est tout trouvé, Docker.
Dans cet article, nous allons déployer GLPI via un conteneur Docker.
Prérequis
- Avoir un serveur linux avec Docker et Docker Compose: (Tutoriel ici)
- Être connecté dans un shell sur le serveur
Préparation de la pile docker-compose
Commençons par créer un dossier sur notre serveur :
mkdir glpi cd glpi
Maintenant, nous allons créer le fichier de configuration de notre pile docker (stack)
Créer un fichier nommé docker-compose.yml
avec l’éditeur de fichier de votre choix.
Dans notre exemple, nous utiliserons nano:
nano docker-compose.yml
Copiez, collez le texte ci-dessous dans votre fichier puis enregistrez-le:
version: '2' volumes: data: db: services: # mariaDB Container db: image: mariadb:10.11-rc restart: always command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW volumes: - ./db:/var/lib/mysql environment: # It is strongly recommended to change these identifiers by other more secure ones. # Don't forget to report them in the app service below. - MYSQL_ROOT_PASSWORD=rtpsw - MYSQL_PASSWORD=psw - MYSQL_DATABASE=glpi - MYSQL_USER=user #GLPI Container app: image: jr0w3/glpi:latest restart: always ports: - 80:80 links: - db volumes: - ./data:/data environment: - MYSQL_PASSWORD=psw - MYSQL_DATABASE=glpi - MYSQL_USER=user - MYSQL_HOST=db
Passons rapidement en revue le code saisie dans notre fichier docker-compose.yml
Dans cette pile on retrouve 2 image différente, une image pour le container de la base de données mariadb:10.11-rc
et une jr0w3/glpi:latest
pour le container GLPI.
Par défaut le port pour accéder à GLPI est le 80, je vous conseille de le conserver, si vous voulez tout de même changer le port par le 8080 par exemple, il vous suffira alors de remplacer - 80:80
par - 8080:80
. Notez que si vous souhaitez rendre GLPI accessible depuis l’extérieur il est recommandé de passer par un revserse proxy par exemple Nginx proxy Manager.
Par défaut, les volumes (données de vos containers) seront stockées dans le dossier glpi que nous venons de créer. Vous pouvez changer ce réglage en éditant les volumes:
.
Par exemple pour le volume data de glpi, si vous souhaiter les stocker dans /var/www/html/
, vous pouvez modifier le volume comme ceci:
Remplacez - ./data:/data
par - /var/www/html/:/data
Déploiement de GLPI avec Docker Compose
Pour déployer notre pile, il ne nous reste plus qu’à exécuter la commande suivante dans le dossier glpi
précédemment crée:
docker compose up -d
Le déploiement va alors commencer:

Une fois le déploiement terminé, il ne vous restera plus qu’à vous connecter sur l’adresse de votre serveur.
Par exemple, si l’adresse ip de votre serveur et 192.168.1.20 et que vous n’avez pas changé le port 80 par défaut, l’url sera alors: http://192.168.1.20 .
Si vous avez remplacé le port par le 8080, l’url sera alors: http://192.168.1.20:8080 .

Pour finir sachez que par défaut plusieurs comptes sont créés sur glpi:
Compte | Mot de passe | Type |
glpi | glpi | Compte administrateur |
tech | tech | Compte technicien |
normal | normal | Compte d’utilisateur normal |
post-only | post-only | Compte d’utilisateur avec uniquement la permission de créer des tickets |
Sachez qu’il est fortement recommandé de changer les mots de passes de ces différents comptes.
Voilà vous êtes arrivé au bout, il ne vous reste plus qu’à découvrir la bête.
Je pense qu’il y a un petit soucis:
Database configuration file « /app/config/config_db.php » is missing. You have to either restart the install process, either restore this file.
autrement c’est super merci