-
Notifications
You must be signed in to change notification settings - Fork 2
/
docker-compose.yml
111 lines (105 loc) · 2.83 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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
services:
carbure-mariadb:
image: mysql:latest
container_name: carbure_mariadb
environment:
ENV: ${IMAGE_TAG}
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
volumes:
- carburedb:/var/lib/mysql
networks:
- carbure
ports:
- 3306:3306
- 33060:33060
carbure-redis:
image: redis:latest
container_name: carbure_redis
volumes:
- carbureredis:/data
networks:
- carbure
ports:
- 6379:6379
carbure-frontend:
image: carbure_frontend:local
container_name: carbure_frontend
environment:
VITE_SENTRY_DSN: ${SENTRY_DSN}
VITE_APP_ENV: ${IMAGE_TAG}
CHROMATIC_PROJECT_TOKEN: ${CHROMATIC_PROJECT_TOKEN}
build:
context: ./front
volumes:
- ./front:/app
- /app/node_modules
networks:
- carbure
carbure-django:
image: carbure_app:local
container_name: carbure_app
depends_on:
- carbure-mariadb
- carbure-redis
build:
context: .
dockerfile: ./web/Dockerfile
environment:
IMAGE_TAG: ${IMAGE_TAG}
DATABASE_URL: mysql://root:$MYSQL_ROOT_PASSWORD@carbure-mariadb:3306/$MYSQL_DATABASE
REDIS_URL: redis://carbure-redis:6379
SECRET_KEY: ${SECRET_KEY}
ALLOWED_HOSTS: ${ALLOWED_HOSTS}
CSRF_TRUSTED_ORIGINS: ${CSRF_TRUSTED_ORIGINS}
DEBUG: ${DEBUG}
CARBURE_HOME: /app
PYTHONPATH: /app:/app/web
SENTRY_DSN: ${SENTRY_DSN}
EMAIL_HOST: ${EMAIL_HOST}
EMAIL_PORT: ${EMAIL_PORT}
EMAIL_HOST_USER: ${EMAIL_HOST_USER}
EMAIL_HOST_PASSWORD: ${EMAIL_HOST_PASSWORD}
EMAIL_USE_TLS: ${EMAIL_USE_TLS}
AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID}
AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY}
AWS_STORAGE_BUCKET_NAME: ${AWS_STORAGE_BUCKET_NAME}
AWS_DCDOCS_STORAGE_BUCKET_NAME: ${AWS_DCDOCS_STORAGE_BUCKET_NAME}
AWS_S3_REGION_NAME: ${AWS_S3_REGION_NAME}
AWS_S3_ENDPOINT_URL: ${AWS_S3_ENDPOINT_URL}
AWS_S3_USE_SSL: ${AWS_S3_USE_SSL}
SCALINGO_TOKEN: ${SCALINGO_TOKEN}
SCALINGO_MYSQL_UUID: ${SCALINGO_MYSQL_UUID}
METABASE_SECRET_KEY: ${METABASE_SECRET_KEY}
volumes:
- ./web:/app/web
- ./scripts:/app/scripts
- ./cron:/app/cron
- ./front:/app/front
- uploadedfiles:/app/files
networks:
- carbure
carbure-web-proxy:
image: nginx:latest
container_name: carbure_web
depends_on:
- carbure-frontend
- carbure-django
volumes:
- ./gateway:/etc/nginx/conf.d
networks:
- carbure
ports:
- 8090:80
volumes:
carburedb:
name: carbure_carburedb
carbureredis:
name: carbure_carbureredis
uploadedfiles:
name: carbure_uploadedfiles
networks:
carbure:
name: carbure_default