我正在尝试在Mac OSX上运行以下命令:
docker run --rm --name kong-database \
--network=kong-net \
-v /Volumes/docker/postgres:/var/lib/postgresql/data \
-p 5432:5432 \
-e "POSTGRES_USER=kong" \
-e "POSTGRES_DB=kong" \
postgres:9.6
旨在将postgres在docker容器中启动,并将数据库数据持久保存在我的本地文件系统中的/Volumes/docker/postgres
中。但是,出现以下错误,并且容器无法运行:
chown: changing ownership of '/var/lib/postgresql/data': Operation not permitted
有什么想法我可以做些什么吗?
答案 0 :(得分:3)
证明/Volumes
由root
拥有。当我将其切换为/Users/JoshuaErney/Volumes
之类的代码时,此命令成功运行。这是一个示例:
docker run --rm --name kong-database \
--network=kong-net \
-v /Users/JoshuaErney/Volumes/docker/postgres:/var/lib/postgresql/data \
-p 5432:5432 \
-e "POSTGRES_USER=kong" \
-e "POSTGRES_DB=kong" \
postgres:9.6
答案 1 :(得分:0)
jerney的答案是正确的,这是docker-compose.yaml的样子:
services:
test-postgres-compose :
...
volumes :
- pgdata:/var/lib/postgresql/data
...
volumes :
pgdata :