summaryrefslogtreecommitdiff
path: root/docker-compose.yml
blob: 936f89fc1904636d671b5d33d02f56254b9c5d68 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
version: '3.7'

services:
  db:
    image: mysql:5.7
    restart: always
    volumes:
      - "./volumes/db:/var/lib/mysql"
    environment:
      - "MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}"
      - "MYSQL_PASSWORD=${MYSQL_PASSWORD}"
      - "MYSQL_DATABASE=${MYSQL_DATABASE}"
      - "MYSQL_USER=${MYSQL_USER}"
    networks:
      - internal

  app:
    build: "./docker-wordpress"
    restart: always
    depends_on:
      - db
    volumes:
      - "./volumes/data:/var/www/html"
    environment:
      - "WORDPRESS_DB_HOST=db"
      - "WORDPRESS_DB_USER=${MYSQL_USER}"
      - "WORDPRESS_DB_PASSWORD=${MYSQL_PASSWORD}"
      - "WORDPRESS_DB_NAME=${MYSQL_DATABASE}"
        #- "WORDPRESS_DEBUG=1"
    networks:
      - internal
      - traefik
    labels:
      - "traefik.enable=true"
      - "traefik.docker.network=${TRAEFIK_NETWORK}"
      - "traefik.http.routers.${COMPOSE_PROJECT_NAME}-app.rule=Host(`${DOMAIN_1}`) || Host(`${DOMAIN_2}`)"
      - "traefik.http.routers.${COMPOSE_PROJECT_NAME}-app.entrypoints=websecure"
      - "traefik.http.routers.${COMPOSE_PROJECT_NAME}-app.tls.certresolver=letsencrypt"
        #- "traefik.http.routers.${COMPOSE_PROJECT_NAME}-app.middlewares=${COMPOSE_PROJECT_NAME}-basicauth"
        #- "traefik.http.middlewares.${COMPOSE_PROJECT_NAME}-basicauth.basicauth.users=${BASISAUTH_USER}:${BASICAUTH_PASSWORD}"

  wpcli:
    image: wordpress:cli
    links:
      - db
    volumes:
      - "./volumes/data:/var/www/html"
    environment:
      - "WORDPRESS_DB_HOST=db"
      - "WORDPRESS_DB_USER=${MYSQL_USER}"
      - "WORDPRESS_DB_PASSWORD=${MYSQL_PASSWORD}"
    networks:
      - internal
    working_dir: "/var/www/html"
    entrypoint: wp
    command: "--info"

networks:
  internal:
  traefik:
    external: true
    name: "${TRAEFIK_NETWORK}"