[英]Bluemix postgres container with volume attached, failed with 'permission error'
我有postgres docker映像,该映像可以部署在Bluemix Containers上。 工作正常。 但是,当我附加卷时,容器将失败,并显示权限错误。
我正在使用$ PGDATA作为/ var / lib / postgresql / data。 我已经提到入口点脚本,sudo chown -R postgres / var / lib / postgresql / data。 另外我已经使用选项-v data1挂载了卷:/ var / lib / postgresql / data
但是,当我启动容器时,chown总是失败,并显示“权限错误”。
我已将postgres用户添加为根组的一部分。 但这仍然给我同样的错误。
chown: changing ownership of ?/var/lib/postgresql/data?: Permission denied
如何解决此问题?
我找到了一种在根组中添加postgress的方法(在我看来这是一个安全缺陷)。
首先,使该卷对所有人都可写,然后在该卷中添加一个您要与之一起运行守护程序的用户的文件夹(在您的情况下为postgres)。 之后,您可以将卷访问权限重新设置为默认值。
在设置时间,我在入口点脚本中使用了以下代码段:
chsh -s /bin/bash www-data
chmod 777 /var/www
su -c "mkdir -p /var/www/html" www-data
chmod 755 /var/www
usermod -s /bin/false www-data
更改其权限以允许组写入,而不是为postgres
用户添加chown
卷目录:
$ chmod g+w $PGDATA
由于您已经将root
组添加到用户postgres
,因此现在应该可以使用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.