Docker——对使用pull拉取的容器进行dockerfile还原

方法一:lukapeschke/dockerfile-from-image(53.7MB)

sudo git clone git://github.Dcom/lukapeschke/dockerfile-from-image.git
cd dockerfile-from-image
docker build -t lukapeschke/dfa .

对本地已存在的镜像kiwenlau/hadoop查看其dockerfile,输入其image ID

docker run --rm -v '/var/run/docker.sock:/var/run/docker.sock' lukapeschke/dfa <IMAGE_ID>

查看结果:

方法二:LanikSJ/dfimage(60.9MB)

docker pull laniksj/dfimage
docker run -v /var/run/docker.sock:/var/run/docker.sock laniksj/dfimage <IMAGE_ID>

查看结果同上:

方法三(可作为对之前的修正):
另外,使用docker history kiwenlau/hadoop:1.0 --no-trunc=true也可以查看到运行dockerfile指令的过程,只不过是反着记录的,记录中CREATED BY列#(nop)前缀,有人员认为表示此命令无操作。

--no-trunc=true :显示完整的提交记录

Dockerfile中的每一条指令都生成一个镜像,默认生成的镜像层存储位置为docker host主机的/var/lib/docker/${storege driver}。

cd /var/lib/docker/overlay2
ls -lt  #目录中查看(按时间逆序排序)
cd 77d9d414819a8a3d66f8d0c16acd06bcc25ae496dbb7c5205e10e1eb2bada8ef/
cd diff 
ls 

这个diff目录存放就是我们创建镜像时的内容,即b.txt
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 阿里的docker容器镜像网站:https://dev.aliyun.com/search.html?spm=51...
    王上山阅读 374评论 0 0
  • 一、Docker 简介 Docker 两个主要部件:Docker: 开源的容器虚拟化平台Docker Hub: 用...
    R_X阅读 4,406评论 0 27
  • docker常用命令详解 docker logs -t --since="2018-12-26 06:39:22"...
    xuxw阅读 548评论 0 0
  • Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决...
    井底蛙蛙呱呱呱阅读 1,162评论 0 14
  • 1. 镜像仓库 1.1 docker search [OPTIONS] TERM // 搜索镜像 1.2 dock...
    xzz4632阅读 3,365评论 0 2