-
Notifications
You must be signed in to change notification settings - Fork 39
/
Copy pathdocker-compose.yml
76 lines (72 loc) · 2.55 KB
/
docker-compose.yml
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#version: "3"
services:
back:
image: ${BACK_IMAGE_NAME}:${DEPLOYMENT_TAG}
restart: on-failure
labels:
- traefik.enable=true
- traefik.http.routers.back_router.rule=${BACK_ROUTER_RULE}
- traefik.http.routers.back_router.service=back_service
- traefik.http.services.back_service.loadbalancer.server.port=80
environment:
DATABASE_URL: "mysql://${DATABASE_USERNAME}:${DATABASE_PASSWORD}@mysql:3306/${DATABASE_NAME}?serverVersion=11.1.2-MariaDB"
TESTS_DATABASE_URL: "mysql://${DATABASE_USERNAME}:${DATABASE_PASSWORD}@mysql_tests:3306/${DATABASE_NAME}?serverVersion=11.1.2-MariaDB"
APP_SSO_SERVICEPROVIDER_X509CERT: ${APP_SSO_SERVICEPROVIDER_X509CERT}
APP_SSO_SERVICEPROVIDER_PRIVATEKEY: ${APP_SSO_SERVICEPROVIDER_PRIVATEKEY}
APP_SSO_IDENTITYPROVIDER_X509CERT: ${APP_SSO_IDENTITYPROVIDER_X509CERT}
APP_SSO_IDENTITYPROVIDER_ENTITYID: ${APP_SSO_IDENTITYPROVIDER_ENTITYID}
APP_SSO_IDENTITYPROVIDER_LOGINURL: ${APP_SSO_IDENTITYPROVIDER_LOGINURL}
APP_SSO_IDENTITYPROVIDER_LOGOUTURL: ${APP_SSO_IDENTITYPROVIDER_LOGOUTURL}
APP_URL: ${PROTOCOL}://${BASE_DOMAIN}
API_PREFIX: ${API_PREFIX}
MAILER_DSN: ${MAILER_DSN}
MAIL_HOST: ${MAIL_HOST}
APP_SECRET: ${SF_APP_SECRET}
mysql:
image: 'mariadb:11.1'
restart: on-failure
environment:
MYSQL_ROOT_PASSWORD: ${DATABASE_PASSWORD}
MYSQL_DATABASE: ${DATABASE_NAME}
MYSQL_USER: ${DATABASE_USERNAME}
MYSQL_PASSWORD: ${DATABASE_PASSWORD}
volumes:
- mysql_db:/var/lib/mysql
front:
image: ${FRONT_IMAGE_NAME}:${DEPLOYMENT_TAG}
user: "node"
labels:
- traefik.enable=true
- traefik.http.routers.front_router.rule=${FRONT_ROUTER_RULE}
- traefik.http.routers.front_router.service=front_service
- traefik.http.services.front_service.loadbalancer.server.port=3000
working_dir: /home/node/app
environment:
# This is used only per the proxy
NUXT_API_URL: http://${API_DOMAIN}/
proxy:
image: traefik:3.0
container_name: tcm_proxy
command:
- --providers.docker
- --providers.docker.exposedByDefault=false
labels:
- traefik.enable=false
ports:
- "80:80"
restart: on-failure
volumes:
- /var/run/docker.sock:/var/run/docker.sock
networks:
default:
aliases:
- "${API_DOMAIN}"
- "${BASE_DOMAIN}"
volumes:
mysql_db:
networks:
# This could be very usefull to run multiple project on the same machine
tcm_network:
name: tcm_network
default:
name: tcm_network