248 lines
6.5 KiB
XML
248 lines
6.5 KiB
XML
|
services:
|
|||
|
|
|||
|
#== SERVICES OUTILS =======================================================================================================================
|
|||
|
|
|||
|
# Nineapache
|
|||
|
# Reverse proxy de l'ensemble des services
|
|||
|
# Seul port ouvert sur l'exterieur
|
|||
|
nineapache:
|
|||
|
image: reg.cadoles.com/envole/nineapache:8.1
|
|||
|
container_name: nine-nineapache
|
|||
|
restart: unless-stopped
|
|||
|
healthcheck:
|
|||
|
test: curl --fail http://localhost || exit 1
|
|||
|
interval: 1s
|
|||
|
timeout: 60s
|
|||
|
env_file: ./tmp/.env.nineapache
|
|||
|
networks:
|
|||
|
- nine-network
|
|||
|
ports:
|
|||
|
- "80:80"
|
|||
|
volumes:
|
|||
|
- ./volume/nineapache/nine/apache.conf:/etc/apache2/conf.d/zapp.conf
|
|||
|
|
|||
|
# Mariadb
|
|||
|
# Base de données des services
|
|||
|
# Port interne 3306
|
|||
|
mariadb:
|
|||
|
image: docker.io/library/mariadb
|
|||
|
container_name: nine-mariadb
|
|||
|
restart: unless-stopped
|
|||
|
healthcheck:
|
|||
|
test: /nine/check.sh
|
|||
|
interval: 1s
|
|||
|
timeout: 60s
|
|||
|
env_file: ./tmp/.env.mariadb
|
|||
|
networks:
|
|||
|
- nine-network
|
|||
|
volumes:
|
|||
|
- ./volume/mariadb/mysql:/var/lib/mysql
|
|||
|
- ./volume/mariadb/nine:/nine
|
|||
|
|
|||
|
# Redis
|
|||
|
# Base de données redis pour les services qui souhaitent stocker leur session en bdd
|
|||
|
# Port interne 6379
|
|||
|
redis:
|
|||
|
image: redis:4.0
|
|||
|
container_name: nine-redis
|
|||
|
environment:
|
|||
|
- TZ=Europe/Paris
|
|||
|
|
|||
|
# Minio
|
|||
|
# Stocakge S3
|
|||
|
# Port interne 9000 pour le stockage / Port interne 9001 pour l'interface web
|
|||
|
minio:
|
|||
|
image: minio/minio
|
|||
|
container_name: nine-minio
|
|||
|
restart: unless-stopped
|
|||
|
env_file: ./tmp/.env.minio
|
|||
|
networks:
|
|||
|
- nine-network
|
|||
|
volumes:
|
|||
|
- './volume/minio/data:/data'
|
|||
|
command: server /data --console-address ":9001"
|
|||
|
|
|||
|
# Openldap
|
|||
|
# Annuaire
|
|||
|
# Port interne 1389 & 1636
|
|||
|
openldap:
|
|||
|
image: docker.io/bitnami/openldap:2
|
|||
|
container_name: nine-openldap
|
|||
|
restart: unless-stopped
|
|||
|
healthcheck:
|
|||
|
test: /nine/check.sh
|
|||
|
interval: 1s
|
|||
|
timeout: 60s
|
|||
|
env_file: ./tmp/.env.openldap
|
|||
|
networks:
|
|||
|
- nine-network
|
|||
|
volumes:
|
|||
|
- './volume/openldap/data:/bitnami/openldap'
|
|||
|
- './volume/openldap/nine:/nine'
|
|||
|
|
|||
|
# Keycloak
|
|||
|
# serveur SSO
|
|||
|
# Port interne 8999 & 8443
|
|||
|
keycloak:
|
|||
|
image: reg.cadoles.com/envole/keycloak:24.0.5
|
|||
|
container_name: nine-keycloak
|
|||
|
restart: unless-stopped
|
|||
|
healthcheck:
|
|||
|
test: curl --fail http://127.0.0.1:9990 || exit 1
|
|||
|
interval: 1s
|
|||
|
timeout: 60s
|
|||
|
env_file: ./tmp/.env.keycloak
|
|||
|
networks:
|
|||
|
- nine-network
|
|||
|
ports:
|
|||
|
- 8999:8999
|
|||
|
- 8443:8443
|
|||
|
volumes:
|
|||
|
- './volume/keycloak/nine:/nine'
|
|||
|
command:
|
|||
|
- start-dev
|
|||
|
- --import-realm
|
|||
|
|
|||
|
#== SERVICES APPLICATIF =======================================================================================================================
|
|||
|
|
|||
|
# Nextcloud
|
|||
|
# Hébergement de fichiers et une plateforme de collaboration
|
|||
|
# Port interne 80
|
|||
|
nextcloud:
|
|||
|
image: reg.cadoles.com/envole/nextcloud
|
|||
|
container_name: nine-nextcloud
|
|||
|
restart: unless-stopped
|
|||
|
healthcheck:
|
|||
|
test: curl --fail http://localhost || exit 1
|
|||
|
interval: 1s
|
|||
|
timeout: 60s
|
|||
|
env_file: ./tmp/.env.nextcloud
|
|||
|
networks:
|
|||
|
- nine-network
|
|||
|
volumes:
|
|||
|
- ./volume/nextcloud/html:/var/www/html
|
|||
|
- ./volume/nextcloud/app:/var/www/html/custom_apps
|
|||
|
- ./volume/nextcloud/data:/var/www/html/data
|
|||
|
- ./volume/nextcloud/nine:/nine
|
|||
|
- ./volume/nextcloud/prestart:/docker-entrypoint-hooks.d/before-starting
|
|||
|
|
|||
|
# Nineboard
|
|||
|
# Tableaux de bord collaboratif
|
|||
|
# Port interne 80
|
|||
|
nineboard:
|
|||
|
image: reg.cadoles.com/envole/nineboard
|
|||
|
container_name: nine-nineboard
|
|||
|
restart: unless-stopped
|
|||
|
healthcheck:
|
|||
|
test: curl --fail http://localhost/nineboard || exit 1
|
|||
|
interval: 1s
|
|||
|
timeout: 60s
|
|||
|
env_file: ./tmp/.env.nineboard
|
|||
|
networks:
|
|||
|
- nine-network
|
|||
|
volumes:
|
|||
|
- ./volume/nineboard/data/private:/app/uploads
|
|||
|
- ./volume/nineboard/data/public:/app/public/uploads
|
|||
|
|
|||
|
# Ninegate
|
|||
|
# Portail collaboratif
|
|||
|
# Port interne 80
|
|||
|
ninegate:
|
|||
|
image: reg.cadoles.com/envole/ninegate
|
|||
|
container_name: nine-ninegate
|
|||
|
restart: unless-stopped
|
|||
|
healthcheck:
|
|||
|
test: curl --fail http://localhost/ninegate || exit 1
|
|||
|
interval: 1s
|
|||
|
timeout: 60s
|
|||
|
env_file: ./tmp/.env.ninegate
|
|||
|
networks:
|
|||
|
- nine-network
|
|||
|
volumes:
|
|||
|
- ./volume/ninegate/data/private:/app/uploads
|
|||
|
- ./volume/ninegate/data/public:/app/public/uploads
|
|||
|
|
|||
|
# Nineskeletor
|
|||
|
# Portail collaboratif V2
|
|||
|
# Port interne 80
|
|||
|
nineskeletor:
|
|||
|
image: reg.cadoles.com/envole/nineskeletor
|
|||
|
container_name: nine-nineskeletor
|
|||
|
restart: unless-stopped
|
|||
|
healthcheck:
|
|||
|
test: curl --fail http://localhost/nineskeletor || exit 1
|
|||
|
interval: 1s
|
|||
|
timeout: 60s
|
|||
|
env_file: ./tmp/.env.nineskeletor
|
|||
|
networks:
|
|||
|
- nine-network
|
|||
|
volumes:
|
|||
|
- ./volume/nineskeletor/data/private:/app/uploads
|
|||
|
- ./volume/nineskeletor/data/public:/app/public/uploads
|
|||
|
|
|||
|
# Wiki.js
|
|||
|
# Wiki
|
|||
|
# Port interne 3000
|
|||
|
wiki:
|
|||
|
image: linuxserver/dokuwiki
|
|||
|
container_name: nine-dokuwiki
|
|||
|
env_file: ./tmp/.env.dokuwiki
|
|||
|
networks:
|
|||
|
- nine-network
|
|||
|
ports:
|
|||
|
- 9000:80
|
|||
|
|
|||
|
# Wordpress
|
|||
|
# Reseau de blog
|
|||
|
# Port interne 80
|
|||
|
wordpress:
|
|||
|
image: reg.cadoles.com/envole/wordpress
|
|||
|
container_name: nine-wordpress
|
|||
|
restart: unless-stopped
|
|||
|
healthcheck:
|
|||
|
test: curl --fail http://localhost/wordpress || exit 1
|
|||
|
interval: 1s
|
|||
|
timeout: 60s
|
|||
|
env_file: ./tmp/.env.wordpress
|
|||
|
networks:
|
|||
|
nine-network:
|
|||
|
aliases:
|
|||
|
- blog
|
|||
|
volumes:
|
|||
|
- ./volume/wordpress/data:/app/public/wp-content
|
|||
|
|
|||
|
#== SERVIVES DEVELOPPEUR ==================================================================================================================
|
|||
|
|
|||
|
# Adminer
|
|||
|
# Gestionnaire BDD
|
|||
|
# Port interne 8080
|
|||
|
adminer:
|
|||
|
image: docker.io/library/adminer
|
|||
|
container_name: nine-adminer
|
|||
|
restart: unless-stopped
|
|||
|
env_file: ./tmp/.env.adminer
|
|||
|
networks:
|
|||
|
- nine-network
|
|||
|
ports:
|
|||
|
- 9100:8080
|
|||
|
|
|||
|
# Phpldapadmin
|
|||
|
# Gestionnaire Annuaire
|
|||
|
# Port interne 80
|
|||
|
phpldapadmin:
|
|||
|
image: docker.io/osixia/phpldapadmin:latest
|
|||
|
container_name: nine-phpldapadmin
|
|||
|
restart: unless-stopped
|
|||
|
env_file: ./tmp/.env.phpldapadmin
|
|||
|
networks:
|
|||
|
- nine-network
|
|||
|
ports:
|
|||
|
- "9101:80"
|
|||
|
|
|||
|
#== NETWORKS ==============================================================================================================================
|
|||
|
|
|||
|
networks:
|
|||
|
nine-network:
|
|||
|
name: nine-network
|
|||
|
|
|||
|
|