-
Notifications
You must be signed in to change notification settings - Fork 2
/
docker-compose.yml
96 lines (92 loc) · 2.69 KB
/
docker-compose.yml
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
version: '3.7'
services:
web:
build:
context: .
args:
BUILD_ENV: dev
POETRY_INSTALL_ARGS: ''
target: dev
environment:
ALLOWED_HOSTS: 127.0.0.1,0.0.0.0,localhost
DATABASE_URL: postgres://bc:bc@db:5432/bc # pragma: allowlist secret
DJANGO_SETTINGS_MODULE: bc.settings.dev
MEDIA_DIR: /app/media/
RECAPTCHA_PRIVATE_KEY: UPDATE_THIS # pragma: allowlist secret
RECAPTCHA_PUBLIC_KEY: UPDATE_THIS
REDIS_URL: redis://redis
ENABLE_DJANGO_DEFENDER: 'false'
SECRET_KEY: local_dev_secret_key
SECURE_SSL_REDIRECT: 'false'
STATIC_DIR: /app/static/
STATIC_URL: /static/
HEROKU_APP_NAME: 'local-dev'
BONSAI_URL: 'elastic://elastic:9200'
command: tail -f /dev/null # do nothing forever - exec commands elsewhere
ports:
- 8000:8000 # runserver
- 8001:8001 # mkdocs serve
- 6900:6900 # pudb
volumes:
- ./.git:/app/.git:rw
- ./docs:/app/docs:rw
- ./media:/app/media:rw
- ./public:/app/public:rw
- ./docker:/app/docker:rw
- ./bc:/app/bc:rw
- ./README.md:/app/README.md:rw
- ./fabfile.py:/app/fabfile.py:rw
- ./.pre-commit-config.yaml:/app/.pre-commit-config.yaml:rw
# Docs config
- ./mkdocs.yml:/app/mkdocs.yml:rw
# Backend config
- ./manage.py:/app/manage.py:rw
- ./pyproject.toml:/app/pyproject.toml:rw
- ./poetry.lock:/app/poetry.lock:rw
- ./setup.cfg:/app/setup.cfg:rw
# Frontend config
- ./.babelrc:/app/.babelrc:rw
- ./.editorconfig:/app/.editorconfig:rw
- ./.eslintignore:/app/.eslintignore:rw
- ./.eslintrc.js:/app/.eslintrc.js:rw
- ./.prettierignore:/app/.prettierignore:rw
- ./.prettierrc.toml:/app/.prettierrc.toml:rw
- ./.stylelintrc.js:/app/.stylelintrc.js:rw
# - ./browsersync.config.js:/app/browsersync.config.js:rw
- ./package-lock.json:/app/package-lock.json:rw
- ./package.json:/app/package.json:rw
- ./webpack.config.js:/app/webpack.config.js:rw
depends_on:
- db
- redis
- elastic
db:
image: postgres:16
expose:
- 5432
environment:
POSTGRES_DB: bc
POSTGRES_USER: bc
POSTGRES_PASSWORD: bc # pragma: allowlist secret
PGDATABASE: bc
PGUSER: bc
PGPASSWORD: bc # pragma: allowlist secret
POSTGRES_HOST_AUTH_METHOD: trust
logging:
driver: none
volumes:
- .:/app:ro
redis:
image: redis:7.2
expose:
- 6379
logging:
driver: none
elastic:
image: elasticsearch:7.9.2
ports:
- '9200:9200'
- '9300:9300'
environment:
- xpack.security.enabled=false
- discovery.type=single-node