Repository navigation
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
executable file
·122 lines (115 loc) · 3 KB
/
Copy pathdocker-compose.yml
File metadata and controls
executable file
·122 lines (115 loc) · 3 KB
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
services:
nginx:
image: "nginx:stable"
volumes:
- ".:/var/www/html:rw"
- "./docker/nginx/nginx.conf:/etc/nginx/conf.d/default.conf:ro"
healthcheck:
test: [ "CMD-SHELL", "service nginx status || exit 1" ]
timeout: 2s
retries: 10
interval: 5s
restart: "unless-stopped"
networks:
default:
aliases:
- "campaign.remp.press"
- "sso.remp.press"
campaign:
domainname: "campaign.remp.press"
hostname: "campaign"
user: "${UID:-1000}:${GID:-1000}"
environment:
PHP_IDE_CONFIG: "serverName=campaign.remp.press"
XDEBUG_CONFIG: "client_host=172.17.0.1"
build:
context: "./docker/php"
args:
UID: ${UID:-1000}
GID: ${GID:-1000}
UNAME: ${UNAME:-docker}
volumes:
- ".:/var/www/html:rw"
depends_on:
nginx:
condition: service_healthy
mysql:
condition: service_healthy
redis:
condition: service_healthy
restart: "unless-stopped"
queue:
user: "${UID:-1000}:${GID:-1000}"
build:
context: "./docker/php"
args:
UID: ${UID:-1000}
GID: ${GID:-1000}
UNAME: ${UNAME:-docker}
volumes:
- ".:/var/www/html:rw"
depends_on:
nginx:
condition: service_healthy
mysql:
condition: service_healthy
redis:
condition: service_healthy
entrypoint: ["php", "artisan", "queue:work"]
restart: "unless-stopped"
# This service only makes sense locally, for development. In production, you need to execute `php artisan schedule:run`
# every minute. Configure your crontab accordingly.
schedule:
build:
context: "./docker/php"
args:
UID: ${UID:-1000}
GID: ${GID:-1000}
UNAME: ${UNAME:-docker}
volumes:
- ".:/var/www/html:rw"
depends_on:
nginx:
condition: service_healthy
mysql:
condition: service_healthy
redis:
condition: service_healthy
entrypoint: ["php", "artisan", "schedule:work"]
restart: "unless-stopped"
mysql:
image: "mysql:8.0"
volumes:
- "mysql-data:/var/lib/mysql"
- "./docker/mysql/init.sql:/docker-entrypoint-initdb.d/init.sql"
command:
- "--character-set-server=utf8mb4"
- "--collation-server=utf8mb4_unicode_ci"
- "--skip-character-set-client-handshake"
- "--explicit_defaults_for_timestamp"
environment:
MYSQL_ALLOW_EMPTY_PASSWORD: "no"
MYSQL_ROOT_PASSWORD: "secret"
healthcheck:
test: ["CMD", 'mysqladmin', 'ping', '-h', 'localhost', '-u', 'root', '-psecret' ]
timeout: 2s
retries: 10
interval: 5s
restart: "unless-stopped"
redis:
image: "redis:6.2"
volumes:
- "redis-data:/data"
healthcheck:
test: [ "CMD", "redis-cli", "--raw", "incr", "ping" ]
timeout: 2s
retries: 10
interval: 5s
restart: "unless-stopped"
volumes:
mysql-data:
driver: "local"
redis-data:
driver: "local"
networks:
default: