forked from kandy/dev-docker
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
125 lines (112 loc) · 3.29 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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
version: '2'
services:
varnish:
image: eeacms/varnish
ports:
- "80:6081"
- "6085:6085"
depends_on:
- webserver
environment:
BACKENDS: "webserver"
BACKENDS_PORT: "80"
DNS_ENABLED: "false"
BACKENDS_PROBE_ENABLED: "false"
BACKENDS_PROBE_INTERVAL: "3s"
BACKENDS_PROBE_TIMEOUT: "1s"
BACKENDS_PROBE_WINDOW: "3"
BACKENDS_PROBE_THRESHOLD: "2"
DASHBOARD_USER: "admin"
DASHBOARD_PASSWORD: "admin"
DASHBOARD_SERVERS: "mage.perf"
webserver:
image: nginx:alpine
hostname: mage.perf
volumes:
- project-data:/magento
- ./etc/nginx/magento.conf:/etc/nginx/conf.d/default.conf
- ./etc/nginx/xhgui.conf:/etc/nginx/conf.d/xhgui.conf
- ./etc/nginx/nginx.conf:/etc/nginx/nginx.conf
- ./xhgui:/xhgui
environment:
- VIRTUAL_HOST=mage.perf
app:
build:
context: .
dockerfile: build/php/Dockerfile
hostname: app
privileged: true
ports:
- "9501:9501"
volumes:
- project-data:/magento
- ./etc/php/tools:/usr/local/bin/magento2:ro
- ./etc/php/php.ini:/usr/local/etc/php/php.ini:ro
- ./etc/php/php-fpm.conf:/usr/local/etc/php-fpm.conf:ro
- ./etc/php/tideways.ini:/usr/local/etc/php/conf.d/tideways.ini:ro
- ~/.ssh:/root/.ssh:ro
- ~/.composer:/root/.composer:delegated
- ./project:/sync:delegated
app-xdebug:
build:
context: .
dockerfile: build/php-xdebug/Dockerfile
hostname: app-xdebug
volumes:
- project-data:/magento
- ./etc/php/php.ini:/usr/local/etc/php/php.ini:ro
- ./etc/php/php-fpm.conf:/usr/local/etc/php-fpm.conf
- ./etc/php/xdebug.ini:/usr/local/etc/php/conf.d/xdebug.ini
db:
image: mysql:5.7
ports:
- "3306:3306"
environment:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_USER=magento
- MYSQL_PASSWORD=magento
- MYSQL_DATABASE=magento2
volumes:
- db-data:/var/lib/mysql
redis:
image: redis:3.2-alpine
hostname: redis
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:6.7.2
hostname: elasticsearch
environment:
- cluster.name=docker-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
ports:
- "9200:9200"
# Uncomment to setup with rabbitmq
# rabbitmq:
# image: rabbitmq:3-management
# hostname: rabbitmq
# environment:
# RABBITMQ_DEFAULT_USER: "guest"
# RABBITMQ_DEFAULT_PASS: "guest"
# RABBITMQ_DEFAULT_VHOST: "/"
# ports:
# - "15672:15672"
# - "5672:5672"
mongodb:
image: mongo
xhgui:
build:
context: .
dockerfile: build/xhgui/Dockerfile
hostname: xhgui.perf
volumes:
- ./etc/php/php.ini:/usr/local/etc/php/php.ini:ro
- ./etc/php/apache.conf:/etc/apache2/sites-enabled/000-default.conf
volumes:
project-data:
db-data:
networks:
default: