【问题标题】:fe_sendauth: no password supplied error when using passfile in pgadmin with docker-compose on windows?fe_sendauth:在 Windows 上使用 pgadmin 中的密码文件和 docker-compose 时没有提供密码错误?
【发布时间】:2021-11-18 11:27:00
【问题描述】:

基于此question 和其他资源,我能够使用servers.json 配置文件在pgadmin 中设置默认服务器连接。

但是当我尝试打开服务器连接时,我收到此错误并询问密码:

fe_sendauth:未提供密码

没有密码文件,我没有错误(但显然也询问了密码)。


在我的 Windows 文件系统上,我有:
../db/servers.json
../db/servers_pass

使用以下通行证文件:

#host:port:db:user:pass
database:5432:*:postgres:mypasswd

我首先尝试了一个更简单的密码文件,只有database:5432:postgres:mypasswd:postgres:mypasswd,没有换行符,没有注释。我有同样的错误。

database 是用于 Postgres 的 docker-compose 映像的名称和主机的名称(servers.json 正在工作并且与该主机的连接正常,除了密码)。


这些文件在 docker compose 中挂载到/pgadmin4/

volumes:
    - ../db/servers.json:/pgadmin4/servers.json
    - ../db/servers_pass:/pgadmin4/servers_pass

我可以在 docker 容器中看到它们

-rwxr-xr-x    1 pgadmin  pgadmin        526 Nov 18 10:22 servers.json
-rwxr-xr-x    1 root     root            57 Nov 18 11:06 servers_pass

他们没有同一个所有者有点奇怪。
我还阅读了其他问题,即 passfile 的权限需要为 600,但是当文件实际上位于 Windows 文件系统上时,我该如何更改?

【问题讨论】:

    标签: docker-compose pgadmin pgadmin-4


    【解决方案1】:

    我不确定是不是同样的问题,但是,在服务器模式下(与容器一起使用),PassFile 路径以存储目录为前缀。

    因此,如果您将 PassFile 设置为 /foo/pass,pgadmin 将在 /var/lib/pgadmin/storage/your_user_email/foo/pass 中查找它

    我已创建报告here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-07
      • 2012-12-11
      • 2016-02-03
      • 2016-10-15
      • 2013-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多