-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathdocker-compose.prod.yml
92 lines (86 loc) · 2.89 KB
/
docker-compose.prod.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
version: "3.8"
#
# base docker-compose file
#
services:
nginx:
image: masfernandez/${COMPOSE_PROJECT_NAME}-nginx-${ENV}:${VERSION}
build:
context: ./docker/nginx
target: ${ENV}
args:
NGINX_VERSION: ${NGINX_VERSION}
container_name: ${COMPOSE_PROJECT_NAME}-nginx
restart: unless-stopped
depends_on:
- php
volumes:
- .:/var/www/html
# log
- ./var/log/nginx:/var/log/nginx
# vhost
- ./docker/nginx/etc/nginx/templates:/etc/nginx/templates
# config
- ./docker/nginx/etc/nginx/conf.d/00-log-settings.conf:/etc/nginx/conf.d/00-log-settings.conf
environment:
VIRTUAL_HOST: ${NGINX_HOST}
NGINX_HOST: ${NGINX_HOST}
NGINX_PORT: ${NGINX_PORT}
NGINX_DOC_ROOT: ${NGINX_DOC_ROOT}
networks:
- proxy
- musiclabel
php:
image: masfernandez/${COMPOSE_PROJECT_NAME}-php-${ENV}:${VERSION}
build:
context: ./docker/php
target: ${ENV}
args:
PHP_VERSION: ${PHP_VERSION}
container_name: ${COMPOSE_PROJECT_NAME}-php
restart: unless-stopped
environment:
DATABASE_URL_MYSQL: mysql://${MYSQL_USER}:${MYSQL_PASSWORD}@${SYMFONY_MYSQL_DB_HOST}/${MYSQL_DATABASE}?serverVersion=8.0&charset=utf8
DATABASE_URL_MARIADB: mysql://${MARIADB_USER}:${MARIADB_PASSWORD}@${SYMFONY_MARIADB_DB_HOST}/${MARIADB_DATABASE}?serverVersion=mariadb-10.6.4&charset=utf8
ASYNC_TRANSPORT_DSN: amqp://${RABBITMQ_DEFAULT_USER}:${RABBITMQ_DEFAULT_PASS}@${SYMFONY_RABBITMQ_HOST}/%2f/messages
volumes:
- .:/var/www/html
- ./docker/php/etc/supervisor/conf.d:/etc/supervisor.d
networks:
- musiclabel
- db
- redis
- rabbit
promtail:
image: grafana/promtail:latest
container_name: promtail
env_file:
- ./docker/promtail/.env
volumes:
# config file
- ./docker/promtail/config.yaml:/etc/promtail/config.yml
# custom logs here
- ./var/log/symfony/MusicLabel:/var/log/symfony
- ./var/log/nginx:/var/log/nginx
- ./var/log/mysql80:/var/log/mysql80
- ./var/log/mariadb:/var/log/mariadb
restart: ${PROMTAIL_RESTART}
command: -config.file=/etc/promtail/config.yml -config.expand-env=true
environment:
- LOKI_HOST=${PROMTAIL_LOKI_HOST:-loki}
- LOKI_PORT=${PROMTAIL_LOKI_PORT:-3100}
networks:
- grafana
networks:
proxy:
external: true
musiclabel:
external: true
db:
external: true
redis:
external: true
rabbit:
external: true
grafana:
external: true