aboutsummaryrefslogtreecommitdiff
path: root/docker-compose.yml
blob: 64bca8b90c1ab0c58889e2aacd6bbdc2f835c30c (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
version: '3.3'

services:
    db:
        image: mysql:5.7
        volumes:
            - ${VOLUMES_DIR}/db:/var/lib/mysql
        restart: unless-stopped
        environment:
            MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
            MYSQL_DATABASE: ${MYSQL_DATABASE}
            MYSQL_USER: ${MYSQL_USER}
            MYSQL_PASSWORD: ${MYSQL_PASSWORD}

    baikal:
        depends_on:
            - db
        build:
            context: .
            dockerfile: Dockerfile
        ports:
            - "${EXPOSE_PORT}:80"
        environment:
            CONTAINER_DOMAIN_NAME: ${DOMAIN_NAME}
            CONTAINER_HOST_NAME: ${HOST_NAME}
        restart: unless-stopped
        labels:
            - "traefik.http.routers.baikal.rule=Host(`${HOST_NAME}.${DOMAIN_NAME}`)"
            - "traefik.http.middlewares.baikal-path.replacepathregex.regex=^/${PATH_PREFIX}/(.*)"
            - "traefik.http.middlewares.baikal-path.replacepathregex.replacement=/$$1"
            - "traefik.http.routers.baikal-nosub.rule=(Host(`${DOMAIN_NAME}`) || Host(`www.${DOMAIN_NAME}`) && PathPrefix(`${PATH_PREFIX}`)"
            - "traefik.http.routers.baikal-nosub.middlewares=baikal-path@docker"
            - "traefik.http.routers.baikal-wellknown.rule=(Host(`${DOMAIN_NAME}`) || Host(`www.${DOMAIN_NAME}`) && (Path(`.well-known/caldav`) || Path(`.well-known/carddav`))"
        volumes:
            - ${VOLUMES_DIR}/Specific:/var/www/html/Specific