From 3ebba6df47fc3c95791610eb2299662a6d7c53be Mon Sep 17 00:00:00 2001 From: Sonny Bakker Date: Tue, 27 Jun 2023 09:06:24 +0200 Subject: [PATCH] Use more enviroment variables --- docker-compose.development.yml | 6 ++++-- docker-compose.production.yml | 2 +- docker-compose.yml | 23 ++++++++++++----------- src/newsreader/conf/base.py | 11 +++++++---- src/newsreader/conf/docker.py | 12 ------------ src/newsreader/conf/production.py | 4 +--- 6 files changed, 25 insertions(+), 33 deletions(-) diff --git a/docker-compose.development.yml b/docker-compose.development.yml index 8c48340..5cbcb40 100644 --- a/docker-compose.development.yml +++ b/docker-compose.development.yml @@ -1,4 +1,4 @@ -version: '3.6' +version: "3.6" volumes: static-files: @@ -14,9 +14,11 @@ services: django: build: target: development - command: python /app/src/manage.py runserver 0.0.0.0:8000 + command: python /app/src/manage.py runserver 0.0.0.0:${DJANGO_PORT:-8000} environment: - DJANGO_SETTINGS_MODULE=newsreader.conf.docker + ports: + - "${DJANGO_PORT:-8000}:${DJANGO_PORT:-8000}" volumes: - ./src:/app/src - static-files:/app/src/newsreader/static diff --git a/docker-compose.production.yml b/docker-compose.production.yml index ed92cde..ec5db76 100644 --- a/docker-compose.production.yml +++ b/docker-compose.production.yml @@ -1,4 +1,4 @@ -version: '3.6' +version: "3.6" volumes: logs: diff --git a/docker-compose.yml b/docker-compose.yml index 5add0dd..3b65eba 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,4 +1,4 @@ -version: '3.6' +version: "3.6" volumes: logs: @@ -14,9 +14,9 @@ services: timeout: 10s retries: 10 environment: - POSTGRES_DB: 'newsreader' - POSTGRES_USER: 'newsreader' - POSTGRES_PASSWORD: 'newsreader' + POSTGRES_DB: "${POSTGRES_DB:-newsreader}" + POSTGRES_USER: "${POSTGRES_USER:-newsreader}" + POSTGRES_PASSWORD: "${POSTGRES_PASSWORD:-newsreader}" volumes: - postgres-data:/var/lib/postgresql/data @@ -25,8 +25,6 @@ services: memcached: image: memcached:1.6 - ports: - - '11211:11211' entrypoint: - memcached - -m 64 @@ -36,7 +34,8 @@ services: context: . dockerfile: ./docker/django command: | - celery worker -n worker1@%h + celery worker + -n worker1@%h -n worker2@%h --app newsreader --loglevel INFO @@ -64,16 +63,18 @@ services: dockerfile: ./docker/django target: production entrypoint: /app/bin/docker-entrypoint.sh - command: gunicorn --bind 0.0.0.0:8000 --workers 3 newsreader.wsgi:application + command: | + gunicorn + --bind 0.0.0.0:${DJANGO_PORT:-8000} + --workers 3 + newsreader.wsgi:application healthcheck: - test: /usr/bin/curl --fail http://django:8000 || exit 1 + test: /usr/bin/curl --fail http://django:${DJANGO_PORT:-8000} || exit 1 interval: 30s timeout: 10s retries: 10 environment: - DJANGO_SETTINGS_MODULE=newsreader.conf.production - ports: - - '8000:8000' depends_on: memcached: condition: service_started diff --git a/src/newsreader/conf/base.py b/src/newsreader/conf/base.py index f609cb5..97f0cdb 100644 --- a/src/newsreader/conf/base.py +++ b/src/newsreader/conf/base.py @@ -50,6 +50,8 @@ INSTALLED_APPS = [ "newsreader.news.collection", ] +SECRET_KEY = os.environ["DJANGO_SECRET_KEY"] + AUTHENTICATION_BACKENDS = [ "axes.backends.AxesBackend", "django.contrib.auth.backends.ModelBackend", @@ -93,10 +95,11 @@ WSGI_APPLICATION = "newsreader.wsgi.application" DATABASES = { "default": { "ENGINE": "django.db.backends.postgresql", - "HOST": os.environ.get("POSTGRES_HOST", ""), - "NAME": os.environ.get("POSTGRES_NAME", "newsreader"), - "USER": os.environ.get("POSTGRES_USER"), - "PASSWORD": os.environ.get("POSTGRES_PASSWORD"), + "HOST": os.environ["POSTGRES_HOST"], + "PORT": os.environ["POSTGRES_PORT"], + "NAME": os.environ["POSTGRES_DB"], + "USER": os.environ["POSTGRES_USER"], + "PASSWORD": os.environ["POSTGRES_PASSWORD"], } } diff --git a/src/newsreader/conf/docker.py b/src/newsreader/conf/docker.py index 515ee64..7e0cf4e 100644 --- a/src/newsreader/conf/docker.py +++ b/src/newsreader/conf/docker.py @@ -4,24 +4,12 @@ from .version import get_current_version ALLOWED_HOSTS = ["django", "127.0.0.1"] -SECRET_KEY = "=q(ztyo)b6noom#a164g&s9vcj1aawa^g#ing_ir99=_zl4g&$" - INSTALLED_APPS += ["debug_toolbar", "django_extensions"] MIDDLEWARE += ["debug_toolbar.middleware.DebugToolbarMiddleware"] EMAIL_BACKEND = "django.core.mail.backends.console.EmailBackend" -DATABASES = { - "default": { - "ENGINE": "django.db.backends.postgresql", - "NAME": "newsreader", - "USER": "newsreader", - "PASSWORD": "newsreader", - "HOST": "db", - } -} - CACHES = { "default": { "BACKEND": "django.core.cache.backends.memcached.MemcachedCache", diff --git a/src/newsreader/conf/production.py b/src/newsreader/conf/production.py index c58f93a..cdc0152 100644 --- a/src/newsreader/conf/production.py +++ b/src/newsreader/conf/production.py @@ -14,14 +14,12 @@ ADMINS = [ if os.environ.get("ADMINS") ] -SECRET_KEY = os.environ["DJANGO_SECRET_KEY"] - DATABASES = { "default": { "ENGINE": "django.db.backends.postgresql", "HOST": os.environ["POSTGRES_HOST"], "PORT": os.environ["POSTGRES_PORT"], - "NAME": os.environ["POSTGRES_NAME"], + "NAME": os.environ["POSTGRES_DB"], "USER": os.environ["POSTGRES_USER"], "PASSWORD": os.environ["POSTGRES_PASSWORD"], }