-
Notifications
You must be signed in to change notification settings - Fork 1
/
docker-compose.yml
89 lines (89 loc) · 2.13 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
version: '3.5'
services:
cameraemulator:
build:
context: cameraemulator
image: cameraemulator:latest
environment:
- PYTHONUNBUFFERED=1
- PORT=5000
- FTP_SUPPORTED=false
- CAM_NAME=camera_1
cameraemulatorftp:
build:
context: cameraemulator
image: cameraemulator:latest
environment:
- PYTHONUNBUFFERED=1
- PORT=5001
- FTP_SUPPORTED=true
- FTP_HOST=ftpserver
- FTP_USER=admin
- FTP_PASSWORD=pass
- CAM_NAME=camera_2
displayserverbackend:
build:
context: displayserverbackend
args:
- USER_ID=${USER_ID}
- GROUP_ID=${GROUP_ID}
- TIMEZONE=Asia/Taipei
- FTP_USER=admin
- FTP_PASSWORD=pass
image: displayserverbackend:latest
ports:
- 10001:10001
depends_on:
- database
environment:
- PYTHONUNBUFFERED=1
- DATABASE_URL=postgresql://test:password@database:5432/ipcameras
- FTP_HOST=ftpserver
- LOG_TO_STDOUT=true
volumes:
- ./displayserverbackend/app:/home/appuser/app
- ${DATA_DIR}:/home/appuser/data
displayserverfrontend:
build:
context: displayserverfrontend
image: displayserverfrontend:latest
ports:
- 9000:9000
environment:
- DATABASE_URL=postgresql://test:password@database:5432/ipcameras
volumes:
- ./displayserverfrontend/app:/home/appuser/app
database:
container_name: postgres
image: postgres:latest
environment:
- POSTGRES_USER=test
- POSTGRES_PASSWORD=password
- POSTGRES_HOST=localhost
- POSTGRES_PORT=5432
- POSTGRES_DB=ipcameras
ports:
- 5432:5432
volumes:
- ./db_volume:/var/lib/postgres
ftpserver:
build:
context: docker-vsftpd
dockerfile: ./Dockerfile
args:
USER_ID: ${USER_ID}
GROUP_ID: ${GROUP_ID}
image: ftpserver:latest
container_name: vsftpd
ports:
- 0.0.0.0:21:21
- 0.0.0.0:20:20
- 21100-21110:21100-21110
restart: always
environment:
- FTP_USER=admin
- FTP_PASS=pass
volumes:
- ${DATA_DIR}:/home/vsftpd
volumes:
db_volume: