2 Commits
Author SHA1 Message Date
DiouxX d6c567820b Merge branch 'master' of github.com:DiouxX/docker-glpi into 9.1.2 2017-05-05 08:08:37 +02:00
DiouxX 6a50b6e787 Bug Fix#2 LDAPS authentification 2017-04-28 15:54:55 +02:00
5 changed files with 46 additions and 113 deletions

No files matched your search

-1
View File
@@ -1 +0,0 @@
docker-compose-test.yml
+8 -16
View File
@@ -8,25 +8,17 @@ 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 \
php \ php5 \
php-mysql \ php5-mysql \
php-ldap \ php5-ldap \
php-xmlrpc \ php5-xmlrpc \
php-imap \ php5-imap \
curl \ curl \
php-curl \ php5-curl \
php-gd \ php5-gd \
php-mbstring \ wget
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/
+3 -44
View File
@@ -2,22 +2,7 @@
[![](https://images.microbadger.com/badges/version/diouxx/glpi.svg)](http://microbadger.com/images/diouxx/glpi "Get your own version badge on microbadger.com") [![](https://images.microbadger.com/badges/image/diouxx/glpi.svg)](http://microbadger.com/images/diouxx/glpi "Get your own image badge on microbadger.com") [![](https://images.microbadger.com/badges/version/diouxx/glpi.svg)](http://microbadger.com/images/diouxx/glpi "Get your own version badge on microbadger.com") [![](https://images.microbadger.com/badges/image/diouxx/glpi.svg)](http://microbadger.com/images/diouxx/glpi "Get your own image badge on microbadger.com")
# Table of Contents Install and run an GLPI instance with docker
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
@@ -29,7 +14,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 ## Deploy GLPI with database and persistance container data (Recommended)
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.
@@ -47,15 +32,7 @@ docker run --name glpi --hostname glpi --link mysql:mysql --volumes-from glpi-da
Enjoy :) Enjoy :)
## Deploy a specific release of GLPI ## Deploy with docker-compose
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 :
@@ -70,21 +47,3 @@ 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
```
+32 -25
View File
@@ -1,29 +1,36 @@
version: "3" #Mysql Persitance Data
mysql-data:
image: busybox
container_name: mysql-data
volumes:
- /var/lib/mysql:/var/lib/mysql
services:
#Mysql Container #Mysql Container
mysql: mysql:
image: mysql:5.7.23 image: mysql
container_name: mysql container_name: mysql
hostname: mysql hostname: mysql
volumes: volumes_from:
- /var/lib/mysql:/var/lib/mysql - mysql-data
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
ports: ports:
- "80:80" - "80:80"
links: links:
- mysql:mysql - mysql:mysql
volumes: volumes_from:
- /etc/timezone:/etc/timezone:ro - glpi-data
- /etc/localtime:/etc/localtime:ro restart: always
- /var/www/html/glpi/:/var/www/html/glpi
environment:
- TIMEZONE=Europe/Brussels
restart: always
+3 -27
View File
@@ -1,15 +1,8 @@
#!/bin/bash #!/bin/bash
#Controle du choix de version ou prise de la latest VERSION_GLPI=9.1.2
[[ ! "$VERSION_GLPI" ]] \ SRC_GLPI=https://github.com/glpi-project/glpi/releases/download/${VERSION_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) TAR_GLPI=glpi-${VERSION_GLPI}.tgz
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/
@@ -37,22 +30,5 @@ 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