shell Docker cp:来自守护程序的错误响应:lstat没有这样的文件或目录

j2datikz  于 2022-12-30  发布在  Shell
关注(0)|答案(4)|浏览(248)

我正在学习containers docker,我还处于基础阶段。当我尝试使用命令docker cp将文件从container复制到本地主机目录时,输出返回错误。我键入:

docker cp bridge:/home/arq3.txt .

输出:
守护程序的错误响应:文件名/变量/库/文件夹/自动文件系统/管理程序/231afc03ee896d66b09ed3c4d1d057a73eeed4f6182c3108dcbfb5b3337c8fa5/home/arq3.txt:无此文件或目录
第二,docker的文档语法是正确的,那么我做错了什么呢?这个目录var/lib/docker/aufs/mnt/231afc03ee896d66b09ed3c4d1d057a73eeed4f6182c3108dcbfb5b3337c8fa5/是什么?

tyu7yeag

tyu7yeag1#

错误提示您Docker容器中没有文件/home/arq3.txt。请检查文件路径。该文件可能不在/home中,而在/home/<user>/root中。
对于/var/lib/docker/aufs/mnt/231afc03ee896d66b09ed3c4d1d057a73eeed4f6182c3108dcbfb5b3337c8fa5,它是Docker文件层次结构的挂载点。

x33g5p2x

x33g5p2x2#

你的文件在那里。是Docker名称(“桥”)错了。你可能确实像我一样,运行docker ps来获得图像列表,然后-逻辑上-使用图像名称来连接。
问题是您启动了一个新映像,但它具有不同的名称。您希望在Docker运行时打开一个不同的ssh连接,然后再次运行docker ps。这次您将看到一个额外的映像名称。使用新名称,docker cp命令应该可以工作。

deikduxw

deikduxw3#

开头可能缺少“/app”标记。请尝试以下命令-

docker cp bridge:/app/home/arq3.txt .

早些时候我使用以下命令来查找文件的位置-

docker exec -it bridge /bin/sh

当我尝试执行以下命令时,它显示“/app”目录

docker exec -it bridge /bin/bash
cigdeys3

cigdeys34#

当我从/var/lib/docker/aufs中手动删除文件时,遇到了类似的问题
为了让Docker功能恢复,我不得不删除所有图像和所有容器

docker ps -asq | xargs docker rm -f

之后我删除了所有的图片

docker images -q | xargs docker rmi

然后重新启动所有我需要的码头集装箱。

相关问题