Installation avec Docker
Cette page décrit comment déployer Galigeo à l'aide de l'image Docker officielle.
Prérequis
- Docker Engine 20.10 ou supérieur installé sur le serveur hôte
- Accès réseau au registre Docker Hub (
docker.io) - Un répertoire
GALIGEO_HOMEpréparé sur le serveur hôte, contenant la configuration Galigeo (base de données, licence, etc.)
Récupérer l'image
docker pull galigeodocker/galigeo-web:main-galigeo-g26-sp1
Lancer le conteneur
Démarrage minimal
docker run -d -p 8080:8080 \
-v /chemin/vers/galigeo-home:/opt/galigeo \
galigeodocker/galigeo-web:main-galigeo-g26-sp1
L'application est accessible sur http://<serveur>:8080/Galigeo.
Le répertoire
GALIGEO_HOMEest défini par défaut à/opt/galigeodans l'image. Il est possible de le surcharger avec le paramètre-e GALIGEO_HOME=/autre/chemin.
Variables d'environnement
| Variable | Valeur par défaut | Description |
|---|---|---|
GALIGEO_HOME |
/opt/galigeo |
Répertoire de configuration Galigeo |
JAVA_OPTS |
-Dfile.encoding=UTF-8 |
Options JVM supplémentaires |
Docker Compose
Créer un fichier docker-compose.yml :
services:
galigeo:
image: galigeodocker/galigeo-web:main-galigeo-g26-sp1
ports:
- '8080:8080'
environment:
- GALIGEO_HOME=/opt/galigeo
volumes:
- /chemin/vers/galigeo-home:/opt/galigeo
docker compose up -d
Structure du GALIGEO_HOME
Toute la configuration spécifique au client se fait via des sous-dossiers du GALIGEO_HOME. Au démarrage, l'entrypoint les détecte et les applique automatiquement.
galigeo-home/
├── ... # Configuration Galigeo habituelle (licence, DB, etc.)
├── certs/ # Certificats CA à importer dans le truststore JVM
│ ├── mon-ca-interne.crt
│ └── autre-ca.crt
└── tomcat-conf/ # Fichiers de configuration Tomcat personnalisés
├── server.xml # Remplace le server.xml par défaut
└── keystore.p12 # Keystore SSL pour HTTPS
Les sous-dossiers
certs/ettomcat-conf/sont optionnels. S'ils sont absents ou vides, le conteneur démarre avec la configuration par défaut.
Certificats SSL / TLS
Ajouter des certificats au truststore de la JVM
Si Galigeo doit communiquer avec des services internes utilisant des certificats auto-signés ou une CA interne (LDAP, SSO, base de données, API...), il faut ajouter ces certificats au truststore de la JVM.
Il suffit de placer les certificats au format .crt dans le sous-dossier certs/ du GALIGEO_HOME :
galigeo-home/
└── certs/
├── ca-interne.crt
└── ldap-server.crt
Au démarrage, l'entrypoint importe automatiquement tous les fichiers .crt présents dans ce dossier dans le truststore Java (cacerts).
Activer HTTPS sur Tomcat
Pour exposer Galigeo en HTTPS directement depuis le conteneur, placez un fichier server.xml et un keystore dans le sous-dossier tomcat-conf/ du GALIGEO_HOME :
galigeo-home/
└── tomcat-conf/
├── server.xml
└── keystore.p12
Le fichier server.xml doit contenir un connecteur HTTPS, par exemple :
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="conf/keystore.p12"
certificateKeystorePassword="changeit"
type="RSA" />
</SSLHostConfig>
</Connector>
Pensez à exposer le port 8443 au lancement du conteneur :
-p 8443:8443
Avec Docker Compose :
services:
galigeo:
image: galigeodocker/galigeo-web:main-galigeo-g26-sp1
ports:
- '8080:8080'
- '8443:8443'
environment:
- GALIGEO_HOME=/opt/galigeo
volumes:
- /chemin/vers/galigeo-home:/opt/galigeo
Exemple complet
docker run -d \
--name galigeo \
-p 8080:8080 \
-p 8443:8443 \
-v /data/galigeo-home:/opt/galigeo \
galigeodocker/galigeo-web:release-galigeo-g26.0-sp1
Avec l'arborescence suivante côté hôte :
/data/galigeo-home/
├── ... # Configuration Galigeo
├── certs/
│ └── ca-interne.crt
└── tomcat-conf/
├── server.xml
└── keystore.p12
Un seul volume suffit : tout est centralisé dans le GALIGEO_HOME.
Mise à jour
Avant toute mise à jour, effectuer une sauvegarde du répertoire GALIGEO_HOME.
# Arrêter le conteneur
docker compose down
# Récupérer la nouvelle image
docker pull galigeodocker/galigeo-web:main-galigeo-g26-sp1
# Redémarrer
docker compose up -d
La configuration existante dans GALIGEO_HOME est préservée. Pour réinitialiser la configuration par défaut des panneaux et fonds de carte, supprimer le fichier <GALIGEO_HOME>/config/config.json.