Я пытаюсь развернуть мое приложение Django на докере, но когда я запускаю контейнер, он показывает:
psycopg2.OperationalError: FATAL: база данных "NUTEK" не существует
мой файл docker-compose.yml:
version: '2.1'
services:
web:
restart: always
build: ./web
expose:
- "8000"
links:
- postgres:postgres
- redis:redis
volumes:
- /usr/src/app
- /usr/src/app/static
nginx:
restart: always
build: ./nginx/
ports:
- "80:80"
volumes:
- /www/static
links:
- web:web
postgres:
restart: always
image: postgres:10.6
ports:
- "5432:5432"
redis:
restart: always
image: redis:latest
ports:
- "6379:6379"
мой Dockerfile:
FROM python:3.6.6-onbuild
CMD ["python", "manage.py","run server"]
файл settings.py моего приложения Django:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'NUTEK',
'USER': 'postgres',
'PASSWORD': 'root',
'HOST': 'postgres',
'PORT': '5432',
}
}
мой файл .env:
SECRET_KEY='secret'
DB_NAME=NUTEK
DB_USER=postgres
DB_PASS=root
DB_SERVICE=postgres
DB_PORT=5432
Я искал проблемы в github-хранилище docker-library / postgres и stackoverflow и обнаружил, что должен создать базу данных:
docker run -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=root -e POSTGRES_DB=NUTEK postgres
но это тоже не помогло, надеюсь, кто-то может помочь.