-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdocker-compose.local.yml
More file actions
110 lines (101 loc) · 2.98 KB
/
docker-compose.local.yml
File metadata and controls
110 lines (101 loc) · 2.98 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
volumes:
democrasite_local_postgres_data:
democrasite_local_postgres_data_backups:
democrasite_local_metrics_data:
## Install the Loki docker compose plugin and then uncomment this and the
## logging settings for the services to get logs in Loki
# x-logging: &loki-logging
# driver: loki
# options:
# loki-url: "http://localhost:3100/loki/api/v1/push"
# mode: non-blocking # doesn't seem to work :(
# # see https://grafana.com/docs/loki/latest/send-data/docker-driver/#known-issue-deadlocked-docker-daemon
# loki-retries: 2
# loki-max-backoff: 800ms
# loki-timeout: 1s
services:
django: &django
build:
context: .
dockerfile: ./compose/local/django/Dockerfile
image: democrasite_local_django
container_name: democrasite-local-django
depends_on:
- postgres
volumes:
- .:/app:z
env_file:
- ./.envs/.local/.django
- ./.envs/.local/.postgres
ports:
- "8000:8000"
command: /start
healthcheck:
test: "curl --fail --silent --write-out 'STATUS %{http_code}' --output /dev/null http://localhost:8000/"
timeout: 5s
start_period: 30s
# logging: *loki-logging
postgres:
build:
context: .
dockerfile: ./compose/production/postgres/Dockerfile
image: democrasite_production_postgres
container_name: democrasite-local-postgres
volumes:
- democrasite_local_postgres_data:/var/lib/postgresql/data
- democrasite_local_postgres_data_backups:/backups
env_file:
- ./.envs/.local/.postgres
# logging: *loki-logging
docs:
build:
context: .
dockerfile: ./compose/local/django/Dockerfile
image: democrasite_local_docs
container_name: democrasite-local-docs
volumes:
- .:/app:z
ports:
- "9000:9000"
command: /start-docs
entrypoint: "/bin/bash -c" # overwrite default
# logging: *loki-logging
redis:
image: docker.io/redis:7
container_name: democrasite-local-redis
# logging: *loki-logging
celeryworker: &celery
<<: *django
image: democrasite_local_celeryworker
container_name: democrasite-local-celeryworker
depends_on:
- redis
- postgres
ports: []
command: /start-celeryworker
healthcheck: {}
celerybeat:
<<: *celery
image: democrasite_local_celerybeat
container_name: democrasite-local-celerybeat
command: /start-celerybeat
flower:
<<: *celery
image: democrasite_local_flower
container_name: democrasite-local-flower
ports:
- "5555:5555"
command: /start-flower
metrics:
image: grafana/otel-lgtm:0.17.0
container_name: democrasite-local-metrics
ports:
- "3000:3000"
- "3100:3100" # loki - must be exposed for docker compose plugin
environment:
- GF_AUTH_ANONYMOUS_ENABLED=true
- GF_AUTH_ANONYMOUS_ORG_ROLE=Admin
volumes:
- ./compose/local/grafana/prometheus.yml:/otel-lgtm/prometheus.yaml
- democrasite_local_metrics_data:/data
# logging: *loki-logging