mein Django-Q Container will nicht so richtig laufen.
Er meckert mit den os.environ herum. Ich habe in einer
.env.dev , die im selben Ordner wie das Dockerfile und docker-compose liegt.
Code: Alles auswählen
DEBUG=1
SECRET_KEY='foo123'
DJANGO_ALLOWED_HOSTS=localhost 0.0.0.0 127.0.0.1
SQL_ENGINE=django.db.backends.postgresql
SQL_DATABASE=postgres_django_dev
SQL_USER=user
SQL_PASSWORD=+++
SQL_HOST=db
SQL_PORT=5432
Code: Alles auswählen
version: "3.7"
services:
app:
build: .
volumes:
- ./:/django-app
ports:
- 8000:8000
image: app:djangoname
env_file:
- .env.dev
container_name: django_app_container
command: python manage.py runserver 0.0.0.0:8000
depends_on:
- db
djangoq:
build: .
volumes:
- ./:/django-app
ports:
- "8002:8002"
command: python manage.py qcluster
depends_on:
- app
db:
image: postgres:12.0-alpine
volumes:
- ./data/db:/var/lib/postgresql/data
environment:
- POSTGRES_USER=user
- POSTGRES_PASSWORD=+++
- POSTGRES_DB=postgres_django_dev
container_name: postgres_db_container
volumes:
postgres_data:
In meiner settings.py
Code: Alles auswählen
SECRET_KEY = os.environ.get("SECRET_KEY")
ALLOWED_HOSTS =os.environ.get("DJANGO_ALLOWED_HOSTS").split(" ")
djangoq_1 | raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
djangoq_1 | django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.
djangoq_1 | ALLOWED_HOSTS = os.environ.get("DJANGO_ALLOWED_HOSTS").split(" ")
djangoq_1 | AttributeError: 'NoneType' object has no attribute 'split'
Wenn ich jetzt aber in meiner settings.py den key und die hosts hardcode, dann funktioniert alles:
Code: Alles auswählen
SECRET_KEY = '234ijofdidfg'
ALLOWED_HOSTS =['0.0.0.0']