【问题标题】:Can't use docker cp to copy file from /tmp无法使用 docker cp 从 /tmp 复制文件
【发布时间】:2020-08-11 11:23:25
【问题描述】:

当使用docker cp 将文件从我的本地机器/tmp/data.txt 移动到容器时,它失败并出现错误:

lstat /tmp/data.txt: 没有这样的文件或目录

文件存在,我可以毫无问题地运行stat /tmp/data.txtcat /tmp/data.txt

即使我在 /tmp 中创建另一个文件,例如 data2.txt,我也会得到完全相同的错误。

但如果我在/tmp 之外创建一个文件,就像在~/documents 中一样,并使用docker cp 复制它,它就可以正常工作。

我查看了the documentationdocker cp 并提到:

无法复制某些系统文件如/proc、/sys、/dev、tmpfs下的资源,以及用户在容器中创建的mounts

但没有提到 /tmp 作为这样的目录。

我在 Debian 10 上运行,但我的一个使用 Ubuntu 20.04 的朋友可以做到这一点。

我们都使用相同版本的docker (19.03.11)。

可能是什么原因?

【问题讨论】:

  • 请分享您使用的docker cp 命令

标签: docker docker-cp


【解决方案1】:

我想出了解决办法。

我很快就安装了docker。我卸载了它 (sudo snap remove docker) 并使用官方的Docker guidelines 安装它,以便在 Debian 上安装。

在这之后,它工作得很好。

我认为这可能是由于 snap 包对系统资源的访问受限 - 但我不确定。

【讨论】:

    猜你喜欢
    • 2017-01-23
    • 2016-10-13
    • 2023-03-25
    • 1970-01-01
    • 2018-01-21
    • 2017-06-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-05
    相关资源
    最近更新 更多