『中级篇』构建自己的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-vimdocker 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 和containerdocker 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
  • 编辑DockerfileFROM centos RUN yum install -y vim
  • Dockerfile builddocker build -t liming/centos-vim-new .

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


image

`

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏草根专栏

Docker & ASP.NET Core (1):把代码连接到容器

这样做的好处就是可以节省硬盘空间,也利于复用等等。因为Docker基于镜像创建容器的时候,其镜像是共享的;而且镜像里面的层如果已存在,也无需再下载。

1232
来自专栏后端云

虚拟机无法启动

由于kvm所在的机器启用了SELINUX,后来将之关闭,关闭之后,发现kvm的虚拟机无法启动

3224
来自专栏吴伟祥

Docker学习——数据管理、使用网络(三)

这一章介绍如何在 Docker 内部以及容器之间管理数据,在容器中管理数据主要有两种方式:

902
来自专栏python爬虫实战之路

docker配置redis集群和scrapyd服务

Redis集群的配置方式我们上一篇已经介绍过了,而且使用Dockerfile配置文件我们也介绍了,不过介绍的并不详细,可能有些人看不明白,这篇我们再介绍一些Do...

1503
来自专栏IT笔记

Docker学习之搭建JavaWeb环境进阶篇

上一篇文章中,简单了学习了一下在Docker环境中搭建JavaWeb环境,其实这时候已经是一个全新的镜像了,就是我们的Ghost系统一样,装配了各式各样的软件一...

3557
来自专栏finleyMa

docker学习系列7 容器化Node项目

本节我们自己打包一个docker镜像并发布到官方的镜像仓库中。这样任何人只需执行以下命令: docker run -d -p 3000:3000 finley...

2221
来自专栏纯洁的微笑

Docker(四):Docker 三剑客之 Docker Compose

前两篇文章我们介绍了 Dockerfile 的使用Docker(二):Dockerfile 使用介绍,我们知道使用一个 Dockerfile 模板文件可以定义一...

4243
来自专栏A周立SpringCloud

Docker系列教程17-默认bridge网络中配置DNS

本文依然是一篇翻译,英文原文https://docs.docker.com/engine/userguide/networking/default_networ...

4159
来自专栏信安之路

手把手教你制作漏洞复现环境

在学习的过程中, 是否看到别人搭建的 Exploit 练习平台心痒痒呢? 通过本篇教程的学习, 将手把手教你搭建属于自己的漏洞测试利用环境, 不管是自己学习还有...

2230
来自专栏云原生架构实践

Docker EE 安装 on centos7

有两种方法可以 在Centos上安装和升级Docker企业版(Docker EE):

4382

扫码关注云+社区

领取腾讯云代金券