提取Docker镜像中的文件
大约 3 分钟
我们知道如果通过docker cp 命令能提取docker容器中的文件,但这个需要要求一个能运行的容器。
那如果某个镜像在某些时候无法满足运行条件或其他原因导致不能运行的情况,如何提取镜像中的文件呢?
方法其实很简单
将镜像转存为压缩文件
docker save -o aaa.tar 镜像名
如:
docker save -o aaaa.tar harbor.xxxxxx.cn/xxxxx-dev/xxxxxxxx:ce191aff7
解压文件
解压后有类似下面的文件目录

其中有一个文件:manifest.json,内容大体如下:

layers则代表分层信息。最后一个就是最上层的(大多数时候我们自己放入容器的文件应该在最上层,并不绝对)。
找到与最后一个对应的文件夹,继续解压里面的文件就行。(如果发现没有自己要的文件,说明文件夹不对,继续往上换成另外的文件夹再试即可)
系统推荐
- 记一次内存泄漏
- MyBatis
- 在没有 telnet 和 nc 的世界里,如何优雅地判断端口是否通?
- Spring框架源码关键点
- JDK命令行工具
- KVM方式集群部署ES
- Markdown Mermaid画图实例
- Flutter开发需要涉及的知识点大纲
- AQS源码解读
- 不重启 JVM,如何替换掉已经加载的类?
- CountDownLatch源码解读
- 批量替换文件名中的指定字符串
- 随机毒鸡汤:世界那么大,我的父母应该去看看。