-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yaml
More file actions
112 lines (101 loc) · 2.9 KB
/
docker-compose.yaml
File metadata and controls
112 lines (101 loc) · 2.9 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
version: "3"
services:
db:
image: "postgres:16.2-alpine3.19"
restart: unless-stopped
environment:
- POSTGRES_USER=nti
- POSTGRES_PASSWORD=nti
- POSTGRES_DB=nti
- PGDATA=/data/postgres
ports:
- "5432:5432"
volumes:
- "postgres_data:/data/postgres"
- "./.config/postgres/initdb.d:/docker-entrypoint-initdb.d"
healthcheck:
test: ["CMD-SHELL", "sh -c 'pg_isready -U nti -d nti'"]
interval: 10s
timeout: 3s
retries: 3
backend:
build: backend
restart: "on-failure"
depends_on:
db:
condition: service_healthy
mqtt:
condition: service_started
influxdb:
condition: service_started
ports:
- "8000:8000"
environment:
- APP_LOG_LEVEL=DEBUG
- PG_URI=postgresql+asyncpg://nti:nti@db:5432/nti
- AUTH_SECRET_KEY=932b25ed0d90729416ba383e384567a356b2870f302fb5d04b89dc364f4ccfd6
- AUTH_ALGORITHM=HS256
- MQTT_HOST=mqtt
- MQTT_CLIENT=py_back
- MQTT_USERNAME=nti
- MQTT_PASSWORD=nti
- INFLUX_URL=http://influx.cfeee1e5e4e00a.ru:8086/
- INFLUX_TOKEN=oGxyaChur5XTvoGRBE3FKJMtGSFxQ--GEZtUqmDhr18cMNDcBEMAQNPgtGimgUvvZMyrGrv58IXUj0D-eDO1ZQ==
- INFLUX_ORG=cfeee1e5e4e00a
mqtt:
image: "emqx/nanomq:0.21.6"
restart: unless-stopped
ports:
- "1883:1883"
volumes:
- "./.config/nanomq/nanomq.conf:/etc/nanomq.conf"
- "./.config/nanomq/nanomq_pwd.conf:/etc/nanomq_pwd.conf"
grafana:
image: "grafana/grafana-oss:10.0.12"
restart: unless-stopped
environment:
- GF_RENDERING_SERVER_URL=http://renderer:8081/render
- GF_RENDERING_CALLBACK_URL=http://grafana:3000/
- GF_LOG_FILTERS=rendering:debug
ports:
- "3000:3000"
depends_on:
influxdb:
condition: service_started
db:
condition: service_healthy
volumes:
- "grafana_data:/var/lib/grafana"
- "./.config/grafana/grafana.ini:/etc/grafana/grafana.ini"
- "./.config/grafana-provisioning/:/etc/grafana/provisioning"
renderer:
image: grafana/grafana-image-renderer:latest
ports:
- 8081
influxdb:
image: "influxdb:2.7.5-alpine"
environment:
- DOCKER_INFLUXDB_INIT_MODE=setup
- DOCKER_INFLUXDB_INIT_USERNAME=nti
- DOCKER_INFLUXDB_INIT_PASSWORD=cfeee1e5e4e00a
- DOCKER_INFLUXDB_INIT_ADMIN_TOKEN=oGxyaChur5XTvoGRBE3FKJMtGSFxQ--GEZtUqmDhr18cMNDcBEMAQNPgtGimgUvvZMyrGrv58IXUj0D-eDO1ZQ==
- DOCKER_INFLUXDB_INIT_ORG=cfeee1e5e4e00a
- DOCKER_INFLUXDB_INIT_BUCKET=default
ports:
- "8086:8086"
volumes:
- "influxdb_data:/var/lib/influxdb2"
telegraf:
image: "telegraf:1.29.5"
depends_on:
- "influxdb"
- "mqtt"
volumes:
- "./.config/telegraf/telegraf.conf:/etc/telegraf/telegraf.conf"
# web-proxy:
# frontend:
# networks:
volumes:
influxdb_data:
grafana_data:
postgres_data: