docker –mount错误:ContainerSpec:“–mount”不是有效的存储库/标记

我想使用一个docker群节点的音量,所以我想翻译这个使用音量的无swarm命令:

docker run --name dev_db -v /tmp/postgres:/var/lib/postgresql/data -d postgres 

对这个swarm命令:

 docker service create —-mount 'type=bind,src=/tmp/postgres,dst=/var/lib/postgresql/data,readonly' -—name dev -d -e contraint:node==/swarm1/ postgres Error response from daemon: rpc error: code = InvalidArgument desc = ContainerSpec: "—-mount" is not a valid repository/tag 

问题是,我认为AFAIK也许我错了,但群不接受量,所以我想出了这个--mount命令,但它也不接受。 任何帮助表示赞赏。

在Swarm中确实支持挂载卷,所以我认为这个问题只是在你的命令中input错误,“–mount”应该是“–mount”。 另外我觉得你还有一个错字,应该是制约,我不认为这个制约是应该的。 如果您想使用特定的节点,例如node.hostname == nodename,并查看Docker文档中的示例 。 另外,我认为-e应该被删除,因为你不使用环境variables。

试试:

 docker service create --mount 'type=bind,src=/tmp/postgres,dst=/var/lib/postgresql/data,readonly' --name dev -d --constraint 'node==/swarm1/' postgres