『中级篇』构建自己的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 vim
exit

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

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

上边这种发布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

  • 创建Dockerfile
 mkdir docker-centos-vim
 cd docker-centos-vim/
 vim Dockerfile

  • 编辑Dockerfile
FROM centos
RUN yum install -y vim

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

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


往期精彩
  1. docker导学(一)
  2. 容器的技术概述(二)
  3. docker的魅力初体验-5分钟安装wordpress不走弯路(三)
  4. docker官网介绍(四)
  5. 如何在mac上安装docker(五)
  6. 如何在window上安装docker(六)
  7. 如何在mac上通过vagrant安装虚拟机(七)
  8. 如何在window上通过vagrant安装虚拟机(八)
  9. docker-Machine的本地使用(九)
  10. docker-Machine的本地使用(十)
  11. 在linux/mac下通过Docker-Machine在阿里云上的使用(11)
  12. docker架构和底层技术(12)
  13. docker Image概述(13)
  14. 手动建立一个base Image(14)
  15. 什么是Container(15)

image

猜你喜欢

转载自blog.csdn.net/zhugeaming2018/article/details/80837706