forked from ezsystems/ezplatform
/
distribution.yml
96 lines (88 loc) · 2.09 KB
/
distribution.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
version: '3.3'
# Single server setup for prod where we have php executables in one image and a distribution image which contains
# the php code.
# To be appended after base-prod.yml and create-dataset.yml
services:
distribution:
build:
context: .
dockerfile: Dockerfile-distribution
volumes:
- distribution:/var/www
networks:
- backend
app:
image: ezsystems/php:7.1-v1
depends_on:
- db
- distribution
- dataset-vardir
environment:
- SYMFONY_ENV=${SYMFONY_ENV-prod}
- SYMFONY_DEBUG
- SYMFONY_HTTP_CACHE
- SYMFONY_TRUSTED_PROXIES
- DATABASE_USER
- DATABASE_PASSWORD
- DATABASE_NAME
- DATABASE_HOST=db
- RECOMMENDATIONS_CUSTOMER_ID
- RECOMMENDATIONS_LICENSE_KEY
- PUBLIC_SERVER_URI
networks:
- backend
volumes:
- distribution:/var/www
- vardir:/var/www/web/var
web:
image: nginx:stable
depends_on:
- distribution
- app
ports:
- "8080:80"
environment:
- SYMFONY_ENV=${SYMFONY_ENV-prod}
- MAX_BODY_SIZE=20
- FASTCGI_PASS=app:9000
- TIMEOUT=190
volumes:
- distribution:/var/www:ro
- vardir:/var/www/web/var:ro
networks:
- frontend
- backend
command: >
/bin/sh -c "
if [ -e /etc/nginx/ez_params.d ]; then rm /etc/nginx/ez_params.d; fi;
cp -a /var/www/doc/nginx/ez_params.d /etc/nginx/ez_params.d;
cd /var/www && bin/vhost.sh --template-file=doc/nginx/vhost.template > /etc/nginx/conf.d/default.conf && nginx -g 'daemon off;'"
dataset-vardir:
volumes:
- vardir:/var/www/web/var:ro
networks:
- backend
dataset-dbdump:
volumes:
- dbdump:/dbdump:ro
networks:
- backend
db:
image: ${MYSQL_IMAGE}
volumes:
- dbdump:/docker-entrypoint-initdb.d/:ro
environment:
- MYSQL_RANDOM_ROOT_PASSWORD=1
- MYSQL_USER=$DATABASE_USER
- MYSQL_PASSWORD=$DATABASE_PASSWORD
- MYSQL_DATABASE=$DATABASE_NAME
- TERM=dumb
networks:
- backend
networks:
frontend:
backend:
volumes:
vardir:
dbdump:
distribution: