-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.deploy.yml
More file actions
109 lines (102 loc) · 2.57 KB
/
Copy pathdocker-compose.deploy.yml
File metadata and controls
109 lines (102 loc) · 2.57 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
name: insideout
services:
app:
build:
context: .
dockerfile: Dockerfile
restart: unless-stopped
env_file:
- .env.deploy.vm
extra_hosts:
- "host.docker.internal:host-gateway"
depends_on:
db:
condition: service_healthy
elasticsearch:
condition: service_healthy
minio:
condition: service_healthy
expose:
- "8080"
caddy:
image: caddy:2.9
restart: unless-stopped
env_file:
- .env.deploy.vm
ports:
- "80:80"
- "443:443"
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile:ro
- caddy_data:/data
- caddy_config:/config
depends_on:
- app
db:
image: postgis/postgis:15-3.3
restart: unless-stopped
env_file:
- .env.deploy.vm
volumes:
- pg_data:/var/lib/postgresql/data
- ./db/init:/docker-entrypoint-initdb.d:ro
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"]
interval: 5s
timeout: 5s
retries: 20
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:8.14.3
restart: unless-stopped
env_file:
- .env.deploy.vm
environment:
discovery.type: single-node
xpack.security.enabled: "false"
ES_JAVA_OPTS: -Xms1g -Xmx1g
healthcheck:
test: ["CMD-SHELL", "curl -fsS http://localhost:9200/_cluster/health >/dev/null || exit 1"]
interval: 10s
timeout: 5s
retries: 20
start_period: 30s
volumes:
- es_data:/usr/share/elasticsearch/data
minio:
image: minio/minio:RELEASE.2025-04-22T22-12-26Z
restart: unless-stopped
command: server /data --console-address ":9001"
env_file:
- .env.deploy.vm
environment:
MINIO_ROOT_USER: ${S3_ACCESS_KEY:?set S3_ACCESS_KEY}
MINIO_ROOT_PASSWORD: ${S3_SECRET_KEY:?set S3_SECRET_KEY}
healthcheck:
test: ["CMD-SHELL", "curl -fsS http://localhost:9000/minio/health/live >/dev/null || exit 1"]
interval: 10s
timeout: 5s
retries: 20
start_period: 15s
volumes:
- minio_data:/data
minio-init:
image: minio/mc:RELEASE.2025-04-16T18-13-26Z
env_file:
- .env.deploy.vm
depends_on:
minio:
condition: service_healthy
entrypoint:
- /bin/sh
- -c
- |
mc alias set local http://minio:9000 "$$S3_ACCESS_KEY" "$$S3_SECRET_KEY" &&
mc mb --ignore-existing local/"$$S3_BUCKET" &&
mc anonymous set private local/"$$S3_BUCKET"
restart: "no"
volumes:
pg_data:
es_data:
minio_data:
caddy_data:
caddy_config: