Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 密码验证失败+;Docker&x2B;德扬戈_Python_Django_Docker - Fatal编程技术网

Python 密码验证失败+;Docker&x2B;德扬戈

Python 密码验证失败+;Docker&x2B;德扬戈,python,django,docker,Python,Django,Docker,这不是我第一次使用Docker,但很明显,我的设置出了问题,我弄不清楚 这是我的docker-compose.yml version: "3.1" services: db: image: postgres:9.6.9-alpine environment: POSTGRES_USER: rentalapp POSTGRES_PASSWORD: rentalapp POSTGRES_DB: rentalapp

这不是我第一次使用Docker,但很明显,我的设置出了问题,我弄不清楚

这是我的docker-compose.yml

version: "3.1"
services:
   db:
     image: postgres:9.6.9-alpine
     environment:
         POSTGRES_USER: rentalapp
         POSTGRES_PASSWORD: rentalapp
         POSTGRES_DB: rentalapp
     ports:
        - "5432:5432"
     volumes:
        - pgdata:/var/lib/postgresql/data
volumes:
  pgdata:
这是我本地的.py

DATABASES = {
    "default": {
       "ENGINE": "django.db.backends.postgresql",
       "USER": "rentalapp",
       "PASSWORD": "rentalapp",
       "PORT": 5432,
       "NAME": "rentalapp",
       "HOST": "localhost",
       "ATOMIC_REQUESTS": True,
 }
}
回溯:

django.db.utils.OperationalError: FATAL:  password authentication failed for user "rentalapp"

我猜测这个bug与卷(bind mount dir)有关

这可能是因为卷(或绑定装载目录)已被删除 在第一次启动后初始化。postgres用户和数据库 仅在第一次启动时创建(即/var/lib/postgresql/data) 不能已经包含数据库文件)。尝试运行:

docker compose rm-fv postgres
删除任何容器或卷(尤其是)


docker compose up-d
启动您的容器。

我想我有另一个docker卷和容器正在运行


我决定通过使用

删除所有容器和卷来解决这个问题,我猜也是这样。我已多次删除该容器,但它会发出PersistsDoesHelp?我没有entrypoint.sh或Dockerfile,因此我认为它不会删除。用户创建在哪里?能否显示postgres bash中“\du”的输出并列出用户?postgres不是本地安装的,而是Docker内部安装的,因此我不知道是否可以从终端直接访问它。