问题描述
bitnami / postgresql无法以卷装入开始。我正在使用10.14.0版的官方docker镜像。
容器在没有卷挂载的情况下启动:
docker run --rm --name postgresql -e POSTGREsql_PASSWORD=password123 bitnami/postgresql:10.14.0
postgresql 16:09:04.59
postgresql 16:09:04.60 INFO ==> ** Starting Postgresql setup **
postgresql 16:09:04.62 INFO ==> Validating settings in POSTGREsql_* env vars..
postgresql 16:09:04.63 INFO ==> Loading custom pre-init scripts...
postgresql 16:09:04.63 INFO ==> Initializing Postgresql database...
postgresql 16:09:04.66 INFO ==> pg_hba.conf file not detected. Generating it...
postgresql 16:09:04.66 INFO ==> Generating local authentication configuration
postgresql 16:09:05.97 INFO ==> Starting Postgresql in background...
postgresql 16:09:06.11 INFO ==> Changing password of postgres
postgresql 16:09:06.14 INFO ==> Configuring replication parameters
postgresql 16:09:06.17 INFO ==> Configuring fsync
postgresql 16:09:06.18 INFO ==> Loading custom scripts...
postgresql 16:09:06.19 INFO ==> Enabling remote connections
postgresql 16:09:06.20 INFO ==> Stopping Postgresql...
postgresql 16:09:07.21 INFO ==> ** Postgresql setup finished! **
postgresql 16:09:07.25 INFO ==> ** Starting Postgresql **
2020-09-16 16:09:07.279 GMT [1] LOG: listening on IPv4 address "0.0.0.0",port 5432
2020-09-16 16:09:07.279 GMT [1] LOG: listening on IPv6 address "::",port 5432
2020-09-16 16:09:07.283 GMT [1] LOG: listening on Unix socket "/tmp/.s.PGsql.5432"
2020-09-16 16:09:07.296 GMT [105] LOG: database system was shut down at 2020-09-16 16:09:06 GMT
2020-09-16 16:09:07.302 GMT [1] LOG: database system is ready to accept connections
带有卷挂式
docker run --rm --name postgresql -v /postgresql:/bitnami/postgresql -e POSTGREsql_PASSWORD=password123 bitnami/postgresql:10.14.0
postgresql 16:10:05.99
postgresql 16:10:05.99 Welcome to the Bitnami postgresql container
postgresql 16:10:05.99 Subscribe to project updates by watching https://github.com/bitnami/bitnami-docker-postgresql
postgresql 16:10:05.99 Submit issues and feature requests at https://github.com/bitnami/bitnami-docker-postgresql/issues
postgresql 16:10:05.99
postgresql 16:10:06.01 INFO ==> ** Starting Postgresql setup **
postgresql 16:10:06.02 INFO ==> Validating settings in POSTGREsql_* env vars..
postgresql 16:10:06.03 INFO ==> Loading custom pre-init scripts...
postgresql 16:10:06.03 INFO ==> Initializing Postgresql database...
mkdir: cannot create directory ‘/bitnami/postgresql/data’: Permission denied
postgresql 16:10:06.04 INFO ==> Stopping Postgresql...
带有docker-compose文件
postgresql:
image: bitnami/postgresql:10.14.0
container_name: postgresql
ports:
- 5432:5432
environment:
- POSTGREsql_REPLICATION_MODE=master
- POSTGREsql_REPLICATION_USER=repl_user
- POSTGREsql_REPLICATION_PASSWORD=repl_password
- POSTGREsql_USERNAME=my_user
- POSTGREsql_PASSWORD=my_password
- POSTGREsql_DATABASE=my_database
- POSTGREsql_SYNCHRONOUS_COMMIT_MODE=on
- POSTGREsql_NUM_SYNCHRONOUS_REPLICAS=1
volumes:
- /postgresql:/bitnami/postgresql
restart: always
输出:
docker-compose up
postgresql | postgresql 16:12:34.68
postgresql | postgresql 16:12:34.68 Welcome to the Bitnami postgresql container
postgresql | postgresql 16:12:34.68 Subscribe to project updates by watching https://github.com/bitnami/bitnami-docker-postgresql
postgresql | postgresql 16:12:34.68 Submit issues and feature requests at https://github.com/bitnami/bitnami-docker-postgresql/issues
postgresql | postgresql 16:12:34.68
postgresql | postgresql 16:12:34.70 INFO ==> ** Starting Postgresql setup **
postgresql | postgresql 16:12:34.72 INFO ==> Validating settings in POSTGREsql_* env vars..
postgresql | postgresql 16:12:34.72 INFO ==> Loading custom pre-init scripts...
postgresql | postgresql 16:12:34.73 INFO ==> Initializing Postgresql database...
postgresql | chmod: changing permissions of '/bitnami/postgresql/data': Operation not permitted
postgresql | postgresql 16:12:34.74 WARN ==> Lack of permissions on data directory!
postgresql | chmod: changing permissions of '/bitnami/postgresql/data': Operation not permitted
postgresql | postgresql 16:12:34.75 WARN ==> Lack of permissions on data directory!
postgresql | postgresql 16:12:34.75 INFO ==> pg_hba.conf file not detected. Generating it...
postgresql | postgresql 16:12:34.75 INFO ==> Generating local authentication configuration
postgresql | postgresql 16:12:34.78 INFO ==> Stopping Postgresql...
我找不到任何解决方案。其他容器似乎没有这个问题。如果有人找到解决此问题的方法,请提供帮助。
解决方法
Bitnami工程师在这里
由于Bitnami PostgreSQL容器是非根容器,因此ID为1001的用户需要在要装入的本地文件夹中具有写权限。
sudo chown -R 1001:1001 /postgresql
您可以在我们的GitHub存储库中找到有关此信息的更多信息
https://github.com/bitnami/bitnami-docker-postgresql#persisting-your-database