-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathdocker-compose.yml
109 lines (103 loc) · 2.51 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
version: '3.9'
services:
av:
profiles: [ "core", "av", "all" ]
#debian: image: mkodockx/docker-clamav
image: clamav/clamav-debian:latest
restart: unless-stopped
volumes:
- ./clamav:/var/lib/clamav
database:
profiles: [ "all" ]
stdin_open: true # -i
tty: true
build:
context: .
dockerfile: Dockerfile-mongo
network: host
args:
- TZ=$TZ
environment:
MONGO_INITDB_ROOT_USERNAME: $MONGO_USER
MONGO_INITDB_ROOT_PASSWORD: $MONGO_PASS
MONGO_INITDB_DATABASE: $MONGO_DB
volumes:
- ./mdbdata:/data/db
- ./dump:/dump
- ./scripts/init_db.js:/docker-entrypoint-initdb.d/init_db.js:ro
ports:
- "27017:27017"
restart: always
redis_cache:
profiles: [ "core", "all" ]
image: redis:latest
command: redis-server --maxmemory 100mb --maxmemory-policy allkeys-lfu --appendonly no --stop-writes-on-bgsave-error no --lfu-log-factor 10 --lfu-decay-time 1
volumes:
- ./redis-vol:/data
restart: always
backend:
profiles: [ "backend","core-only", "all" ]
stdin_open: true # -i
tty: true # -t
build:
context: .
dockerfile: Dockerfile-backend
network: host
args:
- TZ=$TZ
- REQUIREMENTS=$REQUIREMENTS
image: python.$STACK
privileged: true
volumes:
- ./backend:/app
- ./config.json:/app/config.json
- ./web-client:/apps/web-client
- ./sys/fs/cgroup:/sys/fs/cgroup:ro
- /var/run/docker.sock:/var/run/docker.sock
environment:
- PORT=8225
links:
- database
- redis_cache
ports:
- "8225:8225"
restart: always
client:
profiles: [ "core-only", "all", "app" ]
stdin_open: true # -i
tty: true # -t
build:
context: .
dockerfile: Dockerfile-webclient
network: host
args:
- TZ=$TZ
- REQUIREMENTS=$REQUIREMENTS
image: python.admin-$STACK
volumes:
- ./web-client:/app
- ./uploads:/uploads
- ./web-client/demo/demo/config.json:/app/config.json
environment:
- PORT=8526
depends_on:
- backend
- av
ports:
- "8526:8526"
restart: always
automation:
profiles: [ "all", "automation" ]
stdin_open: true # -i
tty: true
build:
context: automations
dockerfile: Dockerfile
network: host
args:
- TZ=$TZ
image: automation.$STACK
volumes:
- ./automations:/automations
privileged: true
restart: always