django.db.utils.OperationalError: FATAL: база данных "dbname" не существует - PullRequest
0 голосов
/ 27 декабря 2018

Я пытаюсь развернуть мое приложение 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 

но это тоже не помогло, надеюсь, кто-то может помочь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...