Peter20150926 2024-07-13 17:34 采纳率: 78.3%
浏览 8
已结题

docker save 报错。貌似是容器文件解析的错误

docker save 报错: XXXX/YYYYY/libQt5Core.so.5 input/output error

我在Ubuntu系统中用docker 搞了一个容器,就是一个Ubuntu的,完了里面就是放了动态库文件(.so).
在容器中 运行测试该动态库文件 都没有问题,环境也是对的。但是,宿主机中执行
 docker save -o pre.tar  ir:klp

如图

img

  • 写回答

5条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-07-13 17:36
    关注

    引自免费微信小程序:皆我百晓生

    你的问题是关于 Docker 在保存容器时出现的错误,这个错误显示在尝试读取 /var/tib/ 目录下的某个文件时出现了输入/输出错误。这种情况可能是由于多种原因引起的,例如文件系统问题、磁盘空间不足、权限问题等。我会尝试给出一些可能的解决方案。

    首先,你需要确认你的宿主机有足够的磁盘空间。你可以使用 df -h 命令来检查你的磁盘空间。如果磁盘空间不足,你需要清理一些不必要的文件或者增加磁盘空间。

    其次,检查 Docker 是否有足够的权限来访问和读取 /var/tib/ 目录下的文件。你可以尝试使用 ls -l /var/tib/ 命令来查看这个目录的权限设置。如果 Docker 没有足够的权限,你可能需要更改目录的权限或者运行 Docker 的用户具有足够的权限。

    另外,你也应该检查 Docker 的日志以获取更详细的错误信息。你可以通过 docker logs 命令来查看容器的日志。日志中可能包含更多关于错误原因的信息。

    如果这些步骤都不能解决你的问题,你可能需要尝试重新创建容器并再次尝试保存。在重新创建容器之前,确保你的容器内的所有更改都已经提交,以防丢失。

    关于你提到的 docker save -o pre.tar ir:klp 命令,你需要确保 ir:klp 是正确的镜像名称或镜像ID。你可以通过 docker images 命令来查看你所有的镜像,确认你要保存的镜像名称或ID是否正确。

    如果问题仍然存在,我建议你提供更多关于你的环境和配置的详细信息,包括你的 Docker 版本、操作系统版本、具体的操作步骤等,这样我可以更好地帮助你解决问题。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 8月7日
  • 已采纳回答 7月30日
  • 创建了问题 7月13日