Repository navigation
Expand file tree
/
Copy pathdocker-compose-production.yml
More file actions
119 lines (110 loc) · 2.96 KB
/
Copy pathdocker-compose-production.yml
File metadata and controls
119 lines (110 loc) · 2.96 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
version: "3.9"
services:
service:
image: ${REGISTRY}/feed-parser-service:${IMAGE_TAG}
ports:
- "8080:8080"
networks:
- feed-parser-net
volumes:
- config:/app/config
environment:
CONFIG_PATH: './config/prod.yaml'
INDEX_NOW_KEY: ${SERVICE_INDEX_NOW_KEY}
command: './feed-parser-service'
deploy:
placement:
constraints: [ node.labels.worker == worker-1 ]
restart_policy:
condition: on-failure
rssfeed:
image: ${REGISTRY}/feed-static-generator:${IMAGE_TAG}
environment:
MANTICORE_INDEX: 'feed'
GENERATOR_DELAY: '300s'
networks:
- feed-parser-net
volumes:
- static:/app/static
command: './feed-static-generator'
deploy:
placement:
constraints: [ node.labels.worker == worker-1 ]
restart_policy:
condition: on-failure
server:
image: ${REGISTRY}/feed-server:${IMAGE_TAG}
networks:
- traefik-public
- feed-parser-net
volumes:
- static:/app/static
command: './feed-server'
deploy:
placement:
constraints: [ node.labels.worker == worker-1 ]
restart_policy:
condition: on-failure
labels:
- traefik.enable=true
- traefik.docker.network=traefik-public
- traefik.http.routers.feed-srv.rule=Host(`rss.feed.svodd.ru`)
- traefik.http.services.feed-srv.loadBalancer.server.port=8000
- traefik.http.routers.feed-srv.middlewares=frontend-redirect,secure-headers
- traefik.http.routers.feed-srv.entryPoints=https
- traefik.http.routers.feed-srv.tls=true
- traefik.http.routers.feed-srv.tls.certResolver=letsEncrypt
kremlin-indexer:
image: ${REGISTRY}/feed-kremlin-indexer:${IMAGE_TAG}
networks:
- feed-parser-net
volumes:
- config:/app/config
environment:
CONFIG_PATH: './config/kremlin/prod.yaml'
command: './feed-kremlin-indexer'
deploy:
replicas: 0
placement:
constraints: [ node.labels.worker == worker-1 ]
restart_policy:
condition: none
mil-indexer:
image: ${REGISTRY}/feed-mil-indexer:${IMAGE_TAG}
volumes:
- config:/app/config
networks:
- feed-parser-net
environment:
CONFIG_PATH: './config/mil/prod.yaml'
command: './feed-mil-indexer'
deploy:
replicas: 0
placement:
constraints: [ node.labels.worker == worker-1 ]
restart_policy:
condition: none
mid-indexer:
image: ${REGISTRY}/feed-mid-indexer:${IMAGE_TAG}
volumes:
- config:/app/config
networks:
- feed-parser-net
environment:
CONFIG_PATH: './config/mid/prod.yaml'
command: './feed-mid-indexer'
deploy:
replicas: 0
placement:
constraints: [ node.labels.worker == worker-1 ]
restart_policy:
condition: none
volumes:
config:
static:
networks:
traefik-public:
external: true
feed-parser-net:
name: feed-parser-net
external: true