mirror of
https://github.com/DiouxX/docker-glpi.git
synced 2026-11-15 09:02:32 -05:00
Compare commits
28
Commits
9.1.2
...
58ff53e00b
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
58ff53e00b | ||
|
|
c160bc51b7 | ||
|
|
c1560a4137 | ||
|
|
6498b150b8 | ||
|
|
e7ba97f4be | ||
|
|
cc055d9e3c | ||
|
|
0dbd0e33e9 | ||
|
|
339ff3a2b4 | ||
|
|
16b5b98ce9 | ||
|
|
e1b0aeed3b | ||
|
|
29a1582714 | ||
|
|
fb5dc6cf9b | ||
|
|
3acba52bf2 | ||
|
|
8b13a3bf5c | ||
|
|
d8ff9bd5e0 | ||
|
|
c5a337fe56 | ||
|
|
d88216d498 | ||
|
|
e8a579131f | ||
|
|
c59a35788d | ||
|
|
3b2f81ab30 | ||
|
|
870a041ae7 | ||
|
|
5d78f773c3 | ||
|
|
d41c05b608 | ||
|
|
652e9ef9ee | ||
|
|
b7174c8e45 | ||
|
|
8c7fe25f3d | ||
|
|
3b77fe8f27 | ||
|
|
466c6800d0 |
No files matched your search
@@ -0,0 +1 @@
|
|||||||
|
docker-compose-test.yml
|
||||||
+16
-8
@@ -8,17 +8,25 @@ ENV DEBIAN_FRONTEND noninteractive
|
|||||||
|
|
||||||
#Installation d'apache et de php5 avec extension
|
#Installation d'apache et de php5 avec extension
|
||||||
RUN apt update \
|
RUN apt update \
|
||||||
|
&& apt -y upgrade \
|
||||||
&& apt -y install \
|
&& apt -y install \
|
||||||
apache2 \
|
apache2 \
|
||||||
php5 \
|
php \
|
||||||
php5-mysql \
|
php-mysql \
|
||||||
php5-ldap \
|
php-ldap \
|
||||||
php5-xmlrpc \
|
php-xmlrpc \
|
||||||
php5-imap \
|
php-imap \
|
||||||
curl \
|
curl \
|
||||||
php5-curl \
|
php-curl \
|
||||||
php5-gd \
|
php-gd \
|
||||||
wget
|
php-mbstring \
|
||||||
|
php-xml \
|
||||||
|
php-apcu-bc \
|
||||||
|
php-cas \
|
||||||
|
cron \
|
||||||
|
wget \
|
||||||
|
jq \
|
||||||
|
snmpd
|
||||||
|
|
||||||
#Copie et execution du script pour l'installation et l'initialisation de GLPI
|
#Copie et execution du script pour l'installation et l'initialisation de GLPI
|
||||||
COPY glpi-start.sh /opt/
|
COPY glpi-start.sh /opt/
|
||||||
|
|||||||
@@ -2,7 +2,22 @@
|
|||||||
|
|
||||||
[](http://microbadger.com/images/diouxx/glpi "Get your own version badge on microbadger.com") [](http://microbadger.com/images/diouxx/glpi "Get your own image badge on microbadger.com")
|
[](http://microbadger.com/images/diouxx/glpi "Get your own version badge on microbadger.com") [](http://microbadger.com/images/diouxx/glpi "Get your own image badge on microbadger.com")
|
||||||
|
|
||||||
Install and run an GLPI instance with docker
|
# Table of Contents
|
||||||
|
1. [Introduction](#introduction)
|
||||||
|
2. [Deploy CLI](#deploy-with-CLI)
|
||||||
|
- [Deploy GLPI without database](#deploy-glpi-without-database)
|
||||||
|
- [Deploy GLPI with existing database](#deploy-glpi-with-existing-database)
|
||||||
|
- [Deploy GLPI with database and persistance container data](#deploy-glpi-with-database-and-persistance-container-data)
|
||||||
|
- [Deploy a specific release of GLPI](#deploy-a-specific-release-of-glpi)
|
||||||
|
3. [Deploy docker-compose](#deploy-with-docker-compose)
|
||||||
|
4. [Environnment variables](#environnment-variables)
|
||||||
|
- [Timezone](#timezone)
|
||||||
|
|
||||||
|
# Introduction
|
||||||
|
|
||||||
|
Install and run an GLPI instance with docker.
|
||||||
|
|
||||||
|
# Deploy with CLI
|
||||||
|
|
||||||
## Deploy GLPI without database
|
## Deploy GLPI without database
|
||||||
```sh
|
```sh
|
||||||
@@ -14,7 +29,7 @@ docker run --name glpi -p 80:80 -d diouxx/glpi
|
|||||||
docker run --name glpi --link yourdatabase:mysql -p 80:80 -d diouxx/glpi
|
docker run --name glpi --link yourdatabase:mysql -p 80:80 -d diouxx/glpi
|
||||||
```
|
```
|
||||||
|
|
||||||
## Deploy GLPI with database and persistance container data (Recommended)
|
## Deploy GLPI with database and persistance container data
|
||||||
|
|
||||||
For an usage on production environnement or daily usage, it's recommanded to use a data container for persistent data.
|
For an usage on production environnement or daily usage, it's recommanded to use a data container for persistent data.
|
||||||
|
|
||||||
@@ -32,7 +47,15 @@ docker run --name glpi --hostname glpi --link mysql:mysql --volumes-from glpi-da
|
|||||||
|
|
||||||
Enjoy :)
|
Enjoy :)
|
||||||
|
|
||||||
## Deploy with docker-compose
|
## Deploy a specific release of GLPI
|
||||||
|
Default, docker run will use the latest release of GLPI.
|
||||||
|
For an usage on production environnement, it's recommanded to use the latest release.
|
||||||
|
Here an example for release 9.1.6 :
|
||||||
|
```sh
|
||||||
|
docker run --name glpi --hostname glpi --link mysql:mysql --volumes-from glpi-data -p 80:80 --env "VERSION_GLPI=9.1.6" -d diouxx/glpi
|
||||||
|
```
|
||||||
|
|
||||||
|
# Deploy with docker-compose
|
||||||
|
|
||||||
To deploy with docker compose, you use *docker-compose.yml* and *mysql.env* file.
|
To deploy with docker compose, you use *docker-compose.yml* and *mysql.env* file.
|
||||||
You can modify **_mysql.env_** to personalize settings like :
|
You can modify **_mysql.env_** to personalize settings like :
|
||||||
@@ -47,3 +70,21 @@ To deploy, just run the following command on the same directory as files
|
|||||||
```sh
|
```sh
|
||||||
docker-compose up -d
|
docker-compose up -d
|
||||||
```
|
```
|
||||||
|
|
||||||
|
# Environnment variables
|
||||||
|
|
||||||
|
## TIMEZONE
|
||||||
|
If you need to set timezone for Apache and PHP
|
||||||
|
|
||||||
|
From commande line
|
||||||
|
```sh
|
||||||
|
docker run --name glpi --hostname glpi --link mysql:mysql --volumes-from glpi-data -p 80:80 --env "TIMEZONE=Europe/Brussels" -d diouxx/glpi
|
||||||
|
```
|
||||||
|
|
||||||
|
From docker-compose
|
||||||
|
|
||||||
|
Modify this settings
|
||||||
|
```yml
|
||||||
|
environment:
|
||||||
|
TIMEZONE=Europe/Brussels
|
||||||
|
```
|
||||||
+13
-20
@@ -1,29 +1,18 @@
|
|||||||
#Mysql Persitance Data
|
version: "3"
|
||||||
mysql-data:
|
|
||||||
image: busybox
|
|
||||||
container_name: mysql-data
|
|
||||||
volumes:
|
|
||||||
- /var/lib/mysql:/var/lib/mysql
|
|
||||||
|
|
||||||
|
services:
|
||||||
#Mysql Container
|
#Mysql Container
|
||||||
mysql:
|
mysql:
|
||||||
image: mysql
|
image: mysql:5.7.23
|
||||||
container_name: mysql
|
container_name: mysql
|
||||||
hostname: mysql
|
hostname: mysql
|
||||||
volumes_from:
|
volumes:
|
||||||
- mysql-data
|
- /var/lib/mysql:/var/lib/mysql
|
||||||
env_file:
|
env_file:
|
||||||
- ./mysql.env
|
- ./mysql.env
|
||||||
|
|
||||||
#GLPI Pesitance Data
|
|
||||||
glpi-data:
|
|
||||||
image: busybox
|
|
||||||
container_name: glpi-data
|
|
||||||
volumes:
|
|
||||||
- /var/www/html/glpi:/var/www/html/glpi
|
|
||||||
|
|
||||||
#GLPI Container
|
#GLPI Container
|
||||||
glpi:
|
glpi:
|
||||||
image: diouxx/glpi
|
image: diouxx/glpi
|
||||||
container_name : glpi
|
container_name : glpi
|
||||||
hostname: glpi
|
hostname: glpi
|
||||||
@@ -31,6 +20,10 @@ glpi:
|
|||||||
- "80:80"
|
- "80:80"
|
||||||
links:
|
links:
|
||||||
- mysql:mysql
|
- mysql:mysql
|
||||||
volumes_from:
|
volumes:
|
||||||
- glpi-data
|
- /etc/timezone:/etc/timezone:ro
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- /var/www/html/glpi/:/var/www/html/glpi
|
||||||
|
environment:
|
||||||
|
- TIMEZONE=Europe/Brussels
|
||||||
restart: always
|
restart: always
|
||||||
+27
-3
@@ -1,8 +1,15 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
VERSION_GLPI=9.1.2
|
#Controle du choix de version ou prise de la latest
|
||||||
SRC_GLPI=https://github.com/glpi-project/glpi/releases/download/${VERSION_GLPI}/glpi-${VERSION_GLPI}.tgz
|
[[ ! "$VERSION_GLPI" ]] \
|
||||||
TAR_GLPI=glpi-${VERSION_GLPI}.tgz
|
&& VERSION_GLPI=$(curl -s https://api.github.com/repos/glpi-project/glpi/releases/latest | grep tag_name | cut -d '"' -f 4)
|
||||||
|
|
||||||
|
if [[ -z "${TIMEZONE}" ]]; then echo "TIMEZONE is unset";
|
||||||
|
else echo "date.timezone = \"$TIMEZONE\"" > /etc/php/7.0/apache2/conf.d/timezone.ini;
|
||||||
|
fi
|
||||||
|
|
||||||
|
SRC_GLPI=$(curl -s https://api.github.com/repos/glpi-project/glpi/releases/tags/${VERSION_GLPI} | jq .assets[0].browser_download_url | tr -d \")
|
||||||
|
TAR_GLPI=$(basename ${SRC_GLPI})
|
||||||
FOLDER_GLPI=glpi/
|
FOLDER_GLPI=glpi/
|
||||||
FOLDER_WEB=/var/www/html/
|
FOLDER_WEB=/var/www/html/
|
||||||
|
|
||||||
@@ -30,5 +37,22 @@ echo -e "<VirtualHost *:80>\n\tDocumentRoot /var/www/html/glpi\n\n\t<Directory /
|
|||||||
#Activation du module rewrite d'apache
|
#Activation du module rewrite d'apache
|
||||||
a2enmod rewrite && service apache2 restart && service apache2 stop
|
a2enmod rewrite && service apache2 restart && service apache2 stop
|
||||||
|
|
||||||
|
######################
|
||||||
|
# CRON CONFIGURATION #
|
||||||
|
######################
|
||||||
|
#Add scheduled task by cron and enable
|
||||||
|
echo "*/2 * * * * www-data /usr/bin/php /var/www/html/glpi/front/cron.php &>/dev/null" >> /etc/cron.d/glpi
|
||||||
|
|
||||||
|
#Start cron service
|
||||||
|
service cron start
|
||||||
|
|
||||||
|
######################
|
||||||
|
# SNMP CONFIGURATION #
|
||||||
|
######################
|
||||||
|
#Replace Listen localhot SNMP and restart service
|
||||||
|
sed -ie "s/agentAddress udp:127.0.0.1:161/agentAdrress udp:161/g" /etc/snmp/snmpd.conf
|
||||||
|
|
||||||
|
service snmpd restart
|
||||||
|
|
||||||
#Lancement du service apache au premier plan
|
#Lancement du service apache au premier plan
|
||||||
/usr/sbin/apache2ctl -D FOREGROUND
|
/usr/sbin/apache2ctl -D FOREGROUND
|
||||||
Reference in new issue
Block a user