我正在尝试为我的开发环境整理一个组合文件,但是在寻找一些简便的方法来设置一个填充测试数据的数据库时遇到了问题。我尝试从项目中将目录挂载为postgres容器的数据文件夹,但它以root身份挂载,并且postgres引发:
data directory “/var/lib/postgresql/data/pgdata” has wrong ownership
命名卷有效,但是将其与git repo一起使用会出现问题。
我还可以直接将数据直接复制到Docker映像中,但是每当数据更改时,我都必须重新构建它。
还有其他解决方法吗?
答案 0 :(得分:0)
您需要确定postgresql用户的用户名,这可以通过id -u postgres
(在容器中)完成。
将1234
替换为您从上面获得的ID。
然后在您要挂载的卷上,从主机上执行chown -R 1234:1234 path/to/volume/that/you/are/mounting
。