-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
141 lines (132 loc) · 2.66 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
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
135
136
137
138
139
140
141
version: "3.8"
services:
secrets:
container_name: secrets
build:
context: .
dockerfile: docker/secrets/Dockerfile
entrypoint: /docker-entrypoint.sh
volumes:
- type: volume
source: secrets
target: /secrets
volume:
nocopy: true
- type: volume
source: nginx-secrets
target: /nginx-secrets
volume:
nocopy: true
http:
container_name: http
logging:
options:
max-size: "10m"
max-file: "3"
build:
context: .
dockerfile: docker/http/Dockerfile
command: /scrapy-anon/http-fetcher/http-fetcher
env_file:
- .env
environment:
TZ: "Australia/Sydney"
networks:
- app-backend
tor:
container_name: tor
hostname: tor
build:
context: .
dockerfile: docker/tor/Dockerfile
entrypoint: /docker-entrypoint.sh
depends_on:
- secrets
environment:
TZ: "Australia/Sydney"
env_file:
- .env
networks:
- app-backend
volumes:
- type: volume
source: secrets
target: /secrets
volume:
nocopy: true
scrapy:
container_name: scrapy
hostname: scrapy
build:
context: .
dockerfile: docker/scrapy/Dockerfile
entrypoint: /docker-entrypoint.sh
depends_on:
- secrets
- database
env_file:
- .env
environment:
TZ: "Australia/Sydney"
PYTHONPATH: /import:/grpcimport
networks:
- app-frontend
- app-backend
volumes:
- type: volume
source: secrets
target: /secrets
volume:
nocopy: true
database:
container_name: database
depends_on:
- secrets
build:
context: .
dockerfile: docker/database/Dockerfile
environment:
POSTGRES_PASSWORD_FILE: "/secrets/POSTGRES_PASSWORD"
TZ: "Australia/Sydney"
env_file:
- .env
networks:
- app-backend
volumes:
- type: volume
source: secrets
target: /secrets
volume:
nocopy: true
nginx:
container_name: nginx
depends_on:
- secrets
- scrapy
build:
context: .
dockerfile: docker/nginx/Dockerfile
entrypoint: /docker-entrypoint.sh
command: nginx
env_file:
- .env
environment:
TZ: "Australia/Sydney"
networks:
- app-frontend
ports:
- "${SCRAPYD_PORT}:6801"
volumes:
- type: volume
source: nginx-secrets
target: /secrets
volume:
nocopy: true
volumes:
secrets:
nginx-secrets:
networks:
app-frontend:
driver: bridge
app-backend:
driver: bridge