Files
docker-compose-collection/composes-files/wordpress.yml
2022-05-11 14:08:27 +02:00

81 lines
2.5 KiB
YAML

# Docker-compose mis à disposition par Mickael "PAPAMICA" Asseline
# Date de mise à jour : 27/10/2020
# Variables d'environnement à déclarer :
# - 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)
# - URL_WEBSITE : lien du nom de domaine (exemple : papamica.fr)
# - DB_USER : nom d'utilisateur pour la base de données (exemple : papamica)
# - DB_PASSWORD : mot de passe pour la base de données
# - DB_ROOT : mot de passe ROOT pour la base de données
# Fonctionne avec Portainer
version: "2"
services:
# Base de données
wordpress-db:
container_name: $SERVICE-db
image: mysql:5.7
volumes:
- $DATA_LOCATION/db:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: $DB_ROOT
MYSQL_DATABASE: wordpress
MYSQL_USER: $DB_USER
MYSQL_PASSWORD: $DB_PASSWORD
#Facultatif
networks:
- proxy
logging:
driver: loki
options:
loki-url: "$URL_LOKI"
loki-external-labels: service={{.Name}}
wordpress:
container_name: $SERVICE
depends_on:
- wordpress-db
image: wordpress:latest
restart: always
volumes:
- $DATA_LOCATION/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
- $DATA_LOCATION/html:/var/www/html
environment:
WORDPRESS_DB_HOST: $SERVICE-db:3306
WORDPRESS_DB_USER: $DB_USER
WORDPRESS_DB_PASSWORD: $DB_PASSWORD
WORDPRESS_DB_NAME: wordpress
# ports:
# - 8080:80
# Facultatif
networks:
- proxy
logging:
driver: loki
options:
loki-url: "$URL_LOKI"
loki-external-labels: service={{.Name}}
labels:
- "traefik.enable=true"
- "traefik.http.routers.$SERVICE.entrypoints=http"
- "traefik.http.routers.$SERVICE.rule=Host(`$URL_WEBSITE`)"
- "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_WEBSITE`)"
- "traefik.http.routers.$SERVICE-secure.tls=true"
- "traefik.http.routers.$SERVICE-secure.tls.certresolver=http"
- "traefik.docker.network=proxy"
networks:
proxy:
external:
name: proxy