Error response from daemon: remount xxxxxx/var/lib/rabbitmq/.erlang.cookie, flags: 0x44000: invalid argument 问题解决

发布时间 2023-07-06 11:51:23作者: 小清澈

docker cp 的时候报错

Error response from daemon: remount /var/lib/docker/overlay2/1de5d96d9ed06c75a1125d713001c2b54f76e276a4b877cc09bb9df97363e6a1/merged/var/lib/rabbitmq/.erlang.cookie, flags: 0x44000: invalid argument

个人猜测大概原因是对容器内的同一个路径连续mount了2次,或者是先mount了这个路径/var/lib/rabbitmq,然后又对这个路径下的文件进行了mount

 

需要手工修改docker的配置文件

1、 先停掉docker 服务

systemctl stop docker

2、 然后到容器目录下,修改相关的配置文件

cd /var/lib/docker/containers/{container id}

改前先备份!!!!!

scp config.v2.json config.v2.jsonbak

scp hostconfig.json hostconfig.jsonbak

vi config.v2.json

 

这样的格式不易于修改查看,可以输入命令 %! python -m json.tool

先找到Volumes配置节,可以看到有重复mount的地方。(先对一个路径,后面接着对一个文件mount)删掉其中一行,注意最后一行的末尾应该是没有逗号的

 然后找到 MountPoints  这一节,这里定义了映射关系。同理删掉重复的一节,同样注意末尾配置节}后面没有逗号

 然后wq保存退出

再对hostconfig.json配置文件进行编辑,同理 使用 %! python -m json.tool进行格式化处理

删除Binds 里面对应重复的内容

 

wq保存

3、 重启daemon 和 docker

systemctl daemon-reload

systemctl restart docker

再试一下可以使用docker cp mingl 了