FossilRepo

fossilrepo / docker-compose.yaml
Blame History Raw 107 lines
1
services:
2
backend:
3
build: .
4
command: python manage.py runserver 0.0.0.0:8000
5
ports:
6
- "8000:8000"
7
- "2222:2222"
8
env_file: .env.example
9
environment:
10
DJANGO_DEBUG: "true"
11
DJANGO_SECRET_KEY: "local-dev-only-not-for-production-use-change-in-prod"
12
SECURE_SSL_REDIRECT: "false"
13
SESSION_COOKIE_SECURE: "false"
14
CSRF_COOKIE_SECURE: "false"
15
POSTGRES_HOST: postgres
16
REDIS_URL: redis://redis:6379/1
17
CELERY_BROKER: redis://redis:6379/0
18
EMAIL_HOST: mailpit
19
volumes:
20
- .:/app
21
- ./repos:/data/repos
22
depends_on:
23
postgres:
24
condition: service_healthy
25
redis:
26
condition: service_healthy
27
28
celery-worker:
29
build: .
30
command: celery -A config.celery worker -l info -Q celery
31
env_file: .env.example
32
environment:
33
POSTGRES_HOST: postgres
34
REDIS_URL: redis://redis:6379/1
35
CELERY_BROKER: redis://redis:6379/0
36
volumes:
37
- .:/app
38
depends_on:
39
postgres:
40
condition: service_healthy
41
redis:
42
condition: service_healthy
43
44
celery-beat:
45
build: .
46
command: celery -A config.celery beat -l info --scheduler django_celery_beat.schedulers:DatabaseScheduler
47
env_file: .env.example
48
environment:
49
POSTGRES_HOST: postgres
50
REDIS_URL: redis://redis:6379/1
51
CELERY_BROKER: redis://redis:6379/0
52
volumes:
53
- .:/app
54
depends_on:
55
postgres:
56
condition: service_healthy
57
redis:
58
condition: service_healthy
59
60
postgres:
61
image: postgres:16-alpine
62
ports:
63
- "5432:5432"
64
environment:
65
POSTGRES_DB: fossilrepo
66
POSTGRES_USER: dbadmin
67
# Dev-only credentials. Override via .env in production.
68
POSTGRES_PASSWORD: Password123
69
volumes:
70
- pgdata:/var/lib/postgresql/data
71
healthcheck:
72
test: ["CMD-SHELL", "pg_isready -U dbadmin -d fossilrepo"]
73
interval: 5s
74
timeout: 5s
75
retries: 5
76
77
redis:
78
image: redis:7-alpine
79
ports:
80
- "6379:6379"
81
healthcheck:
82
test: ["CMD", "redis-cli", "ping"]
83
interval: 5s
84
timeout: 5s
85
retries: 5
86
87
mailpit:
88
image: axllent/mailpit
89
ports:
90
- "8025:8025"
91
- "1025:1025"
92
93
minio:
94
image: minio/minio
95
command: server /data --console-address ":9001"
96
ports:
97
- "9000:9000"
98
- "9001:9001"
99
environment:
100
MINIO_ROOT_USER: minioadmin
101
MINIO_ROOT_PASSWORD: minioadmin
102
profiles:
103
- storage
104
105
volumes:
106
pgdata:
107

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button