-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
132 lines (123 loc) · 3.07 KB
/
Copy pathdocker-compose.yml
File metadata and controls
132 lines (123 loc) · 3.07 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
120
121
122
123
124
125
126
127
128
129
130
131
132
version: '3.8'
services:
web:
build:
context: .
dockerfile: Dockerfile
restart: always
expose:
- "8000"
environment:
- HOSTDOC_DATABASE__HOST=db
- HOSTDOC_DATABASE__ENGINE=django.db.backends.postgresql
- HOSTDOC_DATABASE__PORT=5432
env_file:
- .env
volumes:
- django_static:/app/staticfiles
- django_media:/app/media
- hostdoc_extracted:/app/storage/extracted
- hostdoc_zips:/app/storage/zips
depends_on:
- db
- redis
- modelrunner
db:
image: postgres:16-alpine
restart: always
environment:
POSTGRES_DB: ${HOSTDOC_DATABASE__NAME:-hostdoc_db}
POSTGRES_USER: ${HOSTDOC_DATABASE__USER:-hostdoc_user}
POSTGRES_PASSWORD: ${HOSTDOC_DATABASE__PASSWORD:-secure_password}
volumes:
- postgres_data:/var/lib/postgresql/data
env_file:
- .env
redis:
image: redis:7-alpine
restart: always
modelrunner:
image: ollama/ollama:latest
container_name: hostdoc_modelrunner
restart: always
ports:
- "11434:11434"
volumes:
- ollama_data:/root/.ollama
celery_worker:
build:
context: .
dockerfile: Dockerfile
command: celery -A hostdoc_project worker --loglevel=info
restart: always
environment:
- HOSTDOC_DATABASE__HOST=db
- HOSTDOC_DATABASE__ENGINE=django.db.backends.postgresql
- HOSTDOC_DATABASE__PORT=5432
env_file:
- .env
volumes:
- django_media:/app/media
- hostdoc_extracted:/app/storage/extracted
- hostdoc_zips:/app/storage/zips
depends_on:
- db
- redis
- modelrunner
celery_beat:
build:
context: .
dockerfile: Dockerfile
command: celery -A hostdoc_project beat --loglevel=info
restart: always
environment:
- HOSTDOC_DATABASE__HOST=db
- HOSTDOC_DATABASE__ENGINE=django.db.backends.postgresql
- HOSTDOC_DATABASE__PORT=5432
volumes:
- django_media:/app/media
- hostdoc_extracted:/app/storage/extracted
- hostdoc_zips:/app/storage/zips
env_file:
- .env
depends_on:
- db
- redis
flower:
build:
context: .
dockerfile: Dockerfile
command: celery -A hostdoc_project flower --port=5555 --url_prefix=sys-admin/flower
restart: always
environment:
- HOSTDOC_DATABASE__HOST=db
- HOSTDOC_DATABASE__ENGINE=django.db.backends.postgresql
- HOSTDOC_DATABASE__PORT=5432
env_file:
- .env
depends_on:
- redis
nginx:
image: nginx:alpine
restart: always
ports:
- "80:80"
# Ready for port 443 SSL config if needed:
# - "443:443"
volumes:
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf:ro
- django_static:/data/django-static:ro
- django_media:/data/media:ro
- hostdoc_extracted:/data/extracted:ro
- hostdoc_zips:/data/zips:ro
- public-media:/data/public-media:ro
depends_on:
- web
volumes:
postgres_data:
django_static:
django_media:
hostdoc_extracted:
hostdoc_zips:
public-media:
ollama_data: