mirror of
https://github.com/PAPAMICA/docker-compose-collection.git
synced 2026-03-18 21:30:41 +01:00
222 lines
6.6 KiB
YAML
222 lines
6.6 KiB
YAML
# Docker-compose mis à disposition par Mickael "PAPAMICA" Asseline
|
|
# Date de mise à jour : 29/04/2021
|
|
|
|
# Variables d'environnement à déclarer :
|
|
# - URL : lien du service
|
|
# - URL_WS : lien pour les websockets ("ws://localhost:9000")
|
|
# - SERVICE : nom du service (exemple : plex)
|
|
# - DATA_LOCATION : localisation des données (exemple /apps/"service")
|
|
# - URL_LOKI : lien du serveur loki (exemple : ndd/loki/api/v1/push)
|
|
# - DB_USER : nom d'utilisateur pour la base de données (exemple : papamica)
|
|
# - DB_PASSWORD : mot de passe pour la base de données
|
|
# - SECRET : mot de passe de du service
|
|
|
|
# Fonctionne avec Portainer
|
|
version: "2"
|
|
|
|
services:
|
|
taiga-db:
|
|
image: postgres:12.3
|
|
container_name: $SERVICE-db
|
|
environment:
|
|
POSTGRES_DB: taiga
|
|
POSTGRES_USER: $DB_USER
|
|
POSTGRES_PASSWORD: $DB_PASSWORD
|
|
volumes:
|
|
- $DATA_LOCATION/db:/var/lib/postgresql/data
|
|
networks:
|
|
- proxy
|
|
logging:
|
|
driver: loki
|
|
options:
|
|
loki-url: "$URL_LOKI"
|
|
loki-external-labels: service={{.Name}}
|
|
|
|
taiga-back:
|
|
image: taigaio/taiga-back:latest
|
|
container_name: $SERVICE-back
|
|
environment:
|
|
# Database settings
|
|
POSTGRES_DB: taiga
|
|
POSTGRES_USER: $DB_USER
|
|
POSTGRES_PASSWORD: $DB_PASSWORD
|
|
POSTGRES_HOST: taiga-db
|
|
# Taiga settings
|
|
TAIGA_SECRET_KEY: $SECRET
|
|
TAIGA_SITES_DOMAIN: $URL
|
|
TAIGA_SITES_SCHEME: "https"
|
|
# Email settings. Uncomment following lines and configure your SMTP server
|
|
# EMAIL_BACKEND: "django.core.mail.backends.smtp.EmailBackend"
|
|
# DEFAULT_FROM_EMAIL: "no-reply@example.com"
|
|
# EMAIL_USE_TLS: "False"
|
|
# EMAIL_USE_SSL: "False"
|
|
# EMAIL_HOST: "smtp.host.example.com"
|
|
# EMAIL_PORT: 587
|
|
# EMAIL_HOST_USER: "user"
|
|
# EMAIL_HOST_PASSWORD: "password"
|
|
# Rabbitmq settings
|
|
# Should be the same as in taiga-async-rabbitmq and taiga-events-rabbitmq
|
|
RABBITMQ_USER: taiga
|
|
RABBITMQ_PASS: taiga
|
|
# Telemetry settings
|
|
ENABLE_TELEMETRY: "True"
|
|
volumes:
|
|
- $DATA_LOCATION/static-data:/taiga-back/static
|
|
- $DATA_LOCATION/media-data:/taiga-back/media
|
|
networks:
|
|
- proxy
|
|
logging:
|
|
driver: loki
|
|
options:
|
|
loki-url: "$URL_LOKI"
|
|
loki-external-labels: service={{.Name}}
|
|
depends_on:
|
|
- taiga-db
|
|
- taiga-events-rabbitmq
|
|
- taiga-async-rabbitmq
|
|
|
|
taiga-async:
|
|
image: taigaio/taiga-back:latest
|
|
container_name: $SERVICE-async
|
|
entrypoint: ["/taiga-back/docker/async_entrypoint.sh"]
|
|
environment:
|
|
# Database settings
|
|
POSTGRES_DB: taiga
|
|
POSTGRES_USER: $DB_USER
|
|
POSTGRES_PASSWORD: $DB_PASSWORD
|
|
POSTGRES_HOST: taiga-db
|
|
# Taiga settings
|
|
TAIGA_SECRET_KEY: $SECRET
|
|
TAIGA_SITES_DOMAIN: $URL
|
|
TAIGA_SITES_SCHEME: "https"
|
|
# Email settings. Uncomment following lines and configure your SMTP server
|
|
# EMAIL_BACKEND: "django.core.mail.backends.smtp.EmailBackend"
|
|
# DEFAULT_FROM_EMAIL: "no-reply@example.com"
|
|
# EMAIL_USE_TLS: "False"
|
|
# EMAIL_USE_SSL: "False"
|
|
# EMAIL_HOST: "smtp.host.example.com"
|
|
# EMAIL_PORT: 587
|
|
# EMAIL_HOST_USER: "user"
|
|
# EMAIL_HOST_PASSWORD: "password"
|
|
# Rabbitmq settings
|
|
# Should be the same as in taiga-async-rabbitmq and taiga-events-rabbitmq
|
|
RABBITMQ_USER: taiga
|
|
RABBITMQ_PASS: taiga
|
|
# Telemetry settings
|
|
ENABLE_TELEMETRY: "True"
|
|
volumes:
|
|
- $DATA_LOCATION/static-data:/taiga-back/static
|
|
- $DATA_LOCATION/media-data:/taiga-back/media
|
|
networks:
|
|
- proxy
|
|
logging:
|
|
driver: loki
|
|
options:
|
|
loki-url: "$URL_LOKI"
|
|
loki-external-labels: service={{.Name}}
|
|
depends_on:
|
|
- taiga-db
|
|
- taiga-back
|
|
- taiga-async-rabbitmq
|
|
|
|
taiga-async-rabbitmq:
|
|
image: rabbitmq:3-management-alpine
|
|
container_name: $SERVICE-rabbitmq
|
|
environment:
|
|
RABBITMQ_ERLANG_COOKIE: secret-erlang-cookie
|
|
RABBITMQ_DEFAULT_USER: taiga
|
|
RABBITMQ_DEFAULT_PASS: taiga
|
|
RABBITMQ_DEFAULT_VHOST: taiga
|
|
volumes:
|
|
- $DATA_LOCATION/async-rabbitmq-data:/var/lib/rabbitmq
|
|
networks:
|
|
- proxy
|
|
logging:
|
|
driver: loki
|
|
options:
|
|
loki-url: "$URL_LOKI"
|
|
loki-external-labels: service={{.Name}}
|
|
|
|
taiga-front:
|
|
image: taigaio/taiga-front:latest
|
|
container_name: $SERVICE-front
|
|
environment:
|
|
TAIGA_URL: $URL
|
|
TAIGA_WEBSOCKETS_URL: $URL_WS #"ws://localhost:9000"
|
|
networks:
|
|
- proxy
|
|
logging:
|
|
driver: loki
|
|
options:
|
|
loki-url: "$URL_LOKI"
|
|
loki-external-labels: service={{.Name}}
|
|
# volumes:
|
|
# - ./conf.json:/usr/share/nginx/html/conf.json
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.$SERVICE.entrypoints=http"
|
|
- "traefik.http.routers.$SERVICE.rule=Host(`$URL`)"
|
|
- "traefik.http.middlewares.$SERVICE-https-redirect.redirectscheme.scheme=https"
|
|
- "traefik.http.routers.$SERVICE.middlewares=$SERVICE-https-redirect"
|
|
- "traefik.http.routers.$SERVICE-secure.entrypoints=https"
|
|
- "traefik.http.routers.$SERVICE-secure.rule=Host(`$URL`)"
|
|
- "traefik.http.routers.$SERVICE-secure.tls=true"
|
|
- "traefik.http.routers.$SERVICE-secure.tls.certresolver=http"
|
|
- "traefik.http.services.$SERVICE-secure.loadbalancer.server.port=9000"
|
|
- "traefik.docker.network=proxy"
|
|
|
|
|
|
taiga-events:
|
|
image: taigaio/taiga-events:latest
|
|
container_name: $SERVICE-events
|
|
environment:
|
|
RABBITMQ_USER: taiga
|
|
RABBITMQ_PASS: taiga
|
|
TAIGA_SECRET_KEY: "taiga-back-secret-key"
|
|
networks:
|
|
- proxy
|
|
logging:
|
|
driver: loki
|
|
options:
|
|
loki-url: "$URL_LOKI"
|
|
loki-external-labels: service={{.Name}}
|
|
depends_on:
|
|
- taiga-events-rabbitmq
|
|
|
|
taiga-events-rabbitmq:
|
|
image: rabbitmq:3-management-alpine
|
|
container_name: $SERVICE-evet-rabbitmq
|
|
environment:
|
|
RABBITMQ_ERLANG_COOKIE: secret-erlang-cookie
|
|
RABBITMQ_DEFAULT_USER: taiga
|
|
RABBITMQ_DEFAULT_PASS: taiga
|
|
RABBITMQ_DEFAULT_VHOST: taiga
|
|
volumes:
|
|
- $DATA_LOCATION/events-rabbitmq-data:/var/lib/rabbitmq
|
|
networks:
|
|
- proxy
|
|
logging:
|
|
driver: loki
|
|
options:
|
|
loki-url: "$URL_LOKI"
|
|
loki-external-labels: service={{.Name}}
|
|
|
|
taiga-protected:
|
|
image: taigaio/taiga-protected:latest
|
|
container_name: $SERVICE-protected
|
|
environment:
|
|
MAX_AGE: 360
|
|
SECRET_KEY: "taiga-back-secret-key"
|
|
networks:
|
|
- proxy
|
|
logging:
|
|
driver: loki
|
|
options:
|
|
loki-url: "$URL_LOKI"
|
|
loki-external-labels: service={{.Name}}
|
|
|
|
networks:
|
|
proxy:
|
|
external:
|
|
name: proxy
|