手记

『中级篇』构建自己的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)
  16. 构建自己的Docker镜像(16)
  17. Dockerfile详解(17)
  18. 镜像的发布(18)
  19. Dockerfile实战(19)
  20. 容器的操作(20)
  21. Dockerfile实战CMD和ENTRTYPOINT的配合(21)
  22. 容器的资源限制(22)
  23. docker网络(23)
2人推荐
随时随地看视频
慕课网APP