docker save 时访问被拒绝

Posted

技术标签:

【中文标题】docker save 时访问被拒绝【英文标题】:Access is denied while docker save 【发布时间】:2016-09-21 03:04:48 【问题描述】:

我正在尝试在 windows 中保存一个 docker 映像,以便我可以加载到另一个 Linux 机器,在这期间在 windows 中保存图像时,我收到一个错误,指出访问被拒绝重命名 docker 临时文件。

我检查了权限,一切看起来都很好,实际上我可以编辑。这里的任何帮助都是非常可观的。我正在使用 docker 1.11.0

docker save -o . <imgID>
rename .docker_temp_742575903 .: Access is denied.

【问题讨论】:

【参考方案1】:

没关系,连同路径,我需要提供 docker 想要创建的新文件名,并且它不会隐式发生,在我的情况下,我提供了

docker save -o ./<tar name that you wanted docker to create> <imgID>

【讨论】:

我也有同样的问题...解决方案是同时提供文件名例如 C:\build\images\image_file_Name 名称可以是您想要的任何名称 我提供了路径和文件名,但仍然收到错误“open c:\.docker_temp_916058883: Access is denied.” 检查对应用户是否有写权限。通常 C 盘用于系统文件尝试提供不同的路径。 我和@DarioN1有同样的问题 编辑:@DarioN1 我能够解决这个问题(使用 docker 工具箱)。在 docker vm 的虚拟框界面中,有一个共享文件夹选项,我在其中添加了路径。然后我使用 docker 控制台转到该文件夹​​并通过 docker save &lt;image id&gt; &gt; file.tar 保存【参考方案2】:

对于类似的问题,但在 unix 上:

root@linux:/opt/docker# docker save -o ./presto.tar starburstdata/presto
open .docker_temp_359214587: permission denied

您可以使用不同的语法将图像保存为一种解决方法:

root@linux:/opt/docker# docker save starburstdata/presto > presto.tar
root@linux:/opt/docker# ls -l
razem 1356196
-rw-r--r-- 1 root root 1388737024 maj 23 11:16 presto.tar

【讨论】:

谢谢。这确实有助于克服 Linux 的“权限被拒绝”错误。我的一个担心是-o 标志被省略了。它还能创建一个可行的恢复文件吗?【参考方案3】:

解决方法通过将当前的forlder权限更改为777来解决linux上的问题。确保您当前的直接:

mkdir ~/docker-images
cd ~/docker-images
chmod 777 ./
sudo docker save <img_id> -o ./<filename>

【讨论】:

【参考方案4】:

您没有提供图像名称,默认情况下它会创建一些临时名称,但是在重命名时会引发错误。你可以使用这个命令来解决这个问题。

docker save -o <some custom name with path> <imgID or REPOSITORY:TAG>

如果你想在当前目录中创建类似这样的东西

docker save -o ./ubuntu_image.tar ubuntu:latest
or
docker save -o ./ubuntu_image.tar eat546t

如果你想在特定位置创建

docker save -o path/of/image/ubuntu_image.tar ubuntu:latest

【讨论】:

以上是关于docker save 时访问被拒绝的主要内容,如果未能解决你的问题,请参考以下文章

在 docker-compose 期间尝试访问容器中的文件时权限被拒绝(UBUNTU 20.04)

使用 mariadb 10.4.8 docker 容器的用户“root”@“localhost”的访问被拒绝,使用 docker compose 并在附加外部卷时发出问题

拉取访问被拒绝的存储库不存在或可能需要 docker login

docker-compose 中的 MySQL -- 访问被拒绝

Docker 构建拉取访问被拒绝,存储库不存在或可能需要

DOCKER 错误:coffeeteareadb 的拉取访问被拒绝,存储库不存在或可能需要“docker login”