Initial refactor

This commit is contained in:
Sonny Bakker 2023-03-05 15:21:04 +01:00
parent 12b4aa0b91
commit 89f23fe668
11 changed files with 230 additions and 65 deletions

View file

@ -1,62 +1,84 @@
version: "3"
version: '3.6'
volumes:
logs:
media:
postgres-data:
static-files:
node-modules:
services:
db:
image: postgres
image: postgres:15
healthcheck:
test: /usr/bin/pg_isready
interval: 5s
timeout: 10s
retries: 10
environment:
POSTGRES_DB: "newsreader"
POSTGRES_USER: "newsreader"
POSTGRES_PASSWORD: "newsreader"
POSTGRES_DB: 'newsreader'
POSTGRES_USER: 'newsreader'
POSTGRES_PASSWORD: 'newsreader'
volumes:
- postgres-data:/var/lib/postgresql/data
rabbitmq:
image: rabbitmq:3.7
memcached:
image: memcached:1.6
ports:
- "11211:11211"
- '11211:11211'
entrypoint:
- memcached
- -m 64
celery:
build:
context: .
dockerfile: ./docker/django
command: celery worker -n worker1@%h -n worker2@%h --app newsreader --loglevel INFO --concurrency 2 --workdir /app/src/ --beat --scheduler django
command: |
celery worker -n worker1@%h
-n worker2@%h
--app newsreader
--loglevel INFO
--concurrency 2
--workdir /app/src/
--beat
--scheduler django
environment:
- DJANGO_SETTINGS_MODULE=newsreader.conf.docker
- DJANGO_SETTINGS_MODULE=newsreader.conf.production
depends_on:
- rabbitmq
- memcached
rabbitmq:
condition: service_started
memcached:
condition: service_started
db:
condition: service_healthy
django:
condition: service_healthy
volumes:
- ./src/:/app/src
- logs:/app/logs
django:
build:
context: .
dockerfile: ./docker/django
command: python /app/src/manage.py runserver 0.0.0.0:8000
target: production
entrypoint: /app/bin/docker-entrypoint.sh
command: gunicorn --bind 0.0.0.0:8000 --workers 3 newsreader.wsgi:application
healthcheck:
test: /usr/bin/curl --fail http://django:8000 || exit 1
interval: 5s
timeout: 10s
retries: 10
environment:
- DJANGO_SETTINGS_MODULE=newsreader.conf.docker
- DJANGO_SETTINGS_MODULE=newsreader.conf.production
ports:
- "8000:8000"
- '8000:8000'
depends_on:
- db
- memcached
memcached:
condition: service_started
db:
condition: service_healthy
volumes:
- ./src:/app/src
- static-files:/app/src/newsreader/static
stdin_open: true
tty: true
webpack:
build:
context: .
dockerfile: ./docker/webpack
command: npm run build:watch
volumes:
- ./src/:/app/src
- static-files:/app/src/newsreader/static
- node-modules:/app/node_modules
- logs:/app/logs
- media:/app/media