0.4.0
This commit is contained in:
parent
6b2c4996d5
commit
8e7b059ad3
97 changed files with 15077 additions and 6892 deletions
|
|
@ -1,62 +1,102 @@
|
|||
version: "3"
|
||||
version: "3.6"
|
||||
|
||||
volumes:
|
||||
logs:
|
||||
media:
|
||||
postgres-data:
|
||||
static-files:
|
||||
node-modules:
|
||||
|
||||
x-db-env: &db-env
|
||||
POSTGRES_HOST:
|
||||
POSTGRES_PORT:
|
||||
POSTGRES_DB:
|
||||
POSTGRES_USER:
|
||||
POSTGRES_PASSWORD:
|
||||
|
||||
x-django-env: &django-env
|
||||
<<: *db-env
|
||||
DJANGO_SECRET_KEY:
|
||||
DJANGO_SETTINGS_MODULE:
|
||||
|
||||
services:
|
||||
db:
|
||||
image: postgres
|
||||
environment:
|
||||
POSTGRES_DB: "newsreader"
|
||||
POSTGRES_USER: "newsreader"
|
||||
POSTGRES_PASSWORD: "newsreader"
|
||||
<<: *db-env
|
||||
image: postgres:15
|
||||
healthcheck:
|
||||
# Note that --env-file should be used to set these correctly
|
||||
test: /usr/bin/pg_isready --username="${POSTGRES_USER}" --dbname="${POSTGRES_DB}"
|
||||
interval: 5s
|
||||
timeout: 10s
|
||||
retries: 10
|
||||
volumes:
|
||||
- postgres-data:/var/lib/postgresql/data
|
||||
|
||||
rabbitmq:
|
||||
image: rabbitmq:3.7
|
||||
image: rabbitmq:3.12
|
||||
|
||||
memcached:
|
||||
image: memcached:1.6
|
||||
ports:
|
||||
- "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
|
||||
target: production
|
||||
args:
|
||||
<<: *django-env
|
||||
environment:
|
||||
- DJANGO_SETTINGS_MODULE=newsreader.conf.docker
|
||||
<<: *django-env
|
||||
command: |
|
||||
celery --app newsreader
|
||||
--workdir /app/src/
|
||||
worker --loglevel INFO
|
||||
--concurrency 2
|
||||
--beat
|
||||
--scheduler django
|
||||
-n worker1@%h
|
||||
-n worker2@%h
|
||||
depends_on:
|
||||
- rabbitmq
|
||||
- memcached
|
||||
rabbitmq:
|
||||
condition: service_started
|
||||
memcached:
|
||||
condition: service_started
|
||||
db:
|
||||
condition: service_healthy
|
||||
django:
|
||||
condition: service_healthy
|
||||
volumes:
|
||||
- .:/app
|
||||
- logs:/app/logs
|
||||
|
||||
django:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./docker/django
|
||||
command: python /app/src/manage.py runserver 0.0.0.0:8000
|
||||
target: production
|
||||
args:
|
||||
<<: *django-env
|
||||
environment:
|
||||
- DJANGO_SETTINGS_MODULE=newsreader.conf.docker
|
||||
ports:
|
||||
- "8000:8000"
|
||||
<<: *django-env
|
||||
entrypoint: /app/bin/docker-entrypoint.sh
|
||||
command: |
|
||||
gunicorn --bind 0.0.0.0:8000
|
||||
--workers 3
|
||||
--chdir /app/src/
|
||||
newsreader.wsgi:application
|
||||
healthcheck:
|
||||
test: /usr/bin/curl --fail http://django:8000 || exit 1
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 10
|
||||
depends_on:
|
||||
- db
|
||||
- memcached
|
||||
memcached:
|
||||
condition: service_started
|
||||
db:
|
||||
condition: service_healthy
|
||||
volumes:
|
||||
- .:/app
|
||||
- static-files:/app/src/newsreader/static
|
||||
stdin_open: true
|
||||
tty: true
|
||||
webpack:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./docker/webpack
|
||||
command: npm run build:watch
|
||||
volumes:
|
||||
- .:/app
|
||||
- static-files:/app/src/newsreader/static
|
||||
- node-modules:/app/node_modules
|
||||
- logs:/app/logs
|
||||
- media:/app/media
|
||||
- static-files:/app/static
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue