-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
134 lines (125 loc) 路 3.13 KB
/
Copy pathdocker-compose.yml
File metadata and controls
134 lines (125 loc) 路 3.13 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
123
124
125
126
127
128
129
130
131
132
133
134
version: "3.1"
services:
reverse_proxy:
image: itisenricofermi/archivio-digitale-stack:latest
ports:
- 3010:80
depends_on:
- backend
- frontend
deploy:
placement:
constraints: [node.role == manager]
restart_policy:
condition: any
networks:
- backend-network
- frontend-network
frontend:
image: itisenricofermi/archivio-digitale-client:latest
deploy:
placement:
constraints: [node.role == manager]
replicas: 2
restart_policy:
condition: any
depends_on:
- backend
networks:
- frontend-network
backend:
image: itisenricofermi/archivio-digitale-server:latest
deploy:
placement:
constraints: [node.role == manager]
restart_policy:
condition: any
secrets:
- archivio_server_jwt_secret
- archivio_minio_access_key
- archivio_minio_secret_key
environment:
- "MONGODB_URI=mongodb://database:27017/archivio"
- "MAILER_URL=http://mailer/send"
- MINIO_HOST=minio
- MINIO_PORT=9000
- MINIO_SECRET_KEY_FILE=/run/secrets/archivio_minio_secret_key #test key
- MINIO_ACCESS_KEY_FILE=/run/secrets/archivio_minio_access_key #test key
- JWT_SECRET_FILE=/run/secrets/archivio_server_jwt_secret
depends_on:
- database
- minio
networks:
- backend-network
- frontend-network
database:
image: mongo:latest
deploy:
placement:
constraints: [node.role == manager]
restart_policy:
condition: any
volumes:
- database-data:/data/db
- database-config:/data/configdb
environment:
- MONGO_INITDB_DATABASE=archivio
networks:
- backend-network
mailer:
image: itisenricofermi/archivio-digitale-mailer:latest
deploy:
placement:
constraints: [node.role == manager]
restart_policy:
condition: any
secrets:
- archivio_mailer_user
- archivio_mailer_password
environment:
- USER_FILE=/run/secrets/archivio_mailer_user
- PASSWORD_FILE=/run/secrets/archivio_mailer_password
- SERVER=smtp.ionos.com
- FROM=me@riccardosangiorgio.com
networks:
- backend-network
minio:
image: minio/minio:latest
deploy:
placement:
constraints: [node.role == manager]
restart_policy:
condition: any
command: server /data
volumes:
- minio-data:/data
- minio-config:/root/.minio
secrets:
- archivio_minio_secret_key
- archivio_minio_access_key
environment:
- MINIO_SECRET_KEY_FILE=archivio_minio_secret_key #test key
- MINIO_ACCESS_KEY_FILE=archivio_minio_access_key #test key
networks:
- backend-network
secrets:
archivio_minio_secret_key:
external: true
archivio_minio_access_key:
external: true
archivio_server_jwt_secret:
external: true
archivio_mailer_user:
external: true
archivio_mailer_password:
external: true
networks:
frontend-network:
driver: overlay
backend-network:
driver: overlay
volumes:
database-data:
database-config:
minio-data:
minio-config: