『中级篇』构建自己的Docker镜像(16)
2018-08-29 10:39:33
李明
  • 访问次数: 382
  • 注册日期: 2018-07-09
  • 最后登录: 2022-11-17

原创文章,欢迎转载。转载请注明:转载自 IT人故事会,谢谢!
原文链接地址: 『中级篇』构建自己的Docker镜像(16)

构建自己的Docker镜像,push到 https://hub.docker.com/。github源码: https://github.com/limingios/docker.git

Container 转成Image(不推荐)

  • 通过centos的image创建一个容器,修改容器内的内容

docker image ls
docker run -it centos
yum install -y vimexit

1240

  • 查看容器,并转换成Image,发现比原生的centos稍微大了点。建立新的image名称是liming/centos-vim

docker container ls -a
docker commit
docker commit 容器的名称  liming/centos-vim
docker image ls

1240

  • 查看新的image的layer关系,新建立的image其实就是在centos的layer上边增加了一层。

docker history 容器ID
docker history centos的容器ID

1240

上边这种发布Image的方式,其实不被提倡,不安全的,因为这种的可能性,发布出来一个不稳定的Image

docker build的方式也就是通过Dockfile的方式(推荐)

  • 先删除之前创建的Image 和container

docker image rm liming/centos-vim
docker image ls
docker container ls
docker container ls -a
docker container rm c5a14ab5c071
docker container ls -a
docker container ls

1240

  • 创建Dockerfile

 mkdir docker-centos-vim cd docker-centos-vim/
 vim Dockerfile

1240

  • 编辑Dockerfile

FROM centos
RUN yum install -y vim

1240

  • Dockerfile build

docker build -t liming/centos-vim-new .

1240

1240

PS:为啥推荐用Dockerfile的方式,因为文件可以随便编辑,如果你用容器的话,你发给别人如何发麻烦不?还是单文件方便吧。