Docker Postgresql 错误提示:服务器必须由拥有数据目录 postgresql rhel 的用户启动

rak*_*eee 5 postgresql docker rhel7

我有一个 docker compose 文件,我在其中使用共享卷启动 PostgreSQL。但我不断收到以下错误。

2018-10-11 14:57:01.757 GMT [81] LOG:  skipping missing configuration 
file "/postgresql/data/postgresql.auto.conf"
| 2018-10-11 14:57:01.768 GMT [81] FATAL:  data directory "/postgresql/data" has wrong ownership
| 2018-10-11 14:57:01.768 GMT [81] HINT:  The server must be started by the user that owns the data directory.
Run Code Online (Sandbox Code Playgroud)

我的 docker compose 文件如下

addb:
image : postgres
networks:
  - private
ports:
  - "5432:5432"
volumes:
  - /mnt/shared/app_data/db/postgres/data_db:/postgresql/data
depends_on:
  - sol-server
Run Code Online (Sandbox Code Playgroud)

我正在使用 RHEL 7.5 和 Docker 版本 18.06.1-ce,构建 e68fc7。任何想法如何解决上述问题。

小智 0

您应该使用数据库来安装您的卷,而/var/lib/postgresql/data 不是/postgresql/data或者提供一个环境PGDATA=/postgresql/data