『中级篇』构建自己的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 条评论
登录 后参与评论

相关文章

来自专栏finleyMa

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

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

1731
来自专栏IT笔记

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

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

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

Docker EE 安装 on centos7

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

2282
来自专栏A周立SpringCloud

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

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

3979
来自专栏纯洁的微笑

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

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

3843
来自专栏信安之路

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

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

1520
来自专栏草根专栏

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

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

882
来自专栏散尽浮华

CentOS7下安装Docker-Compose操作记录

Docker-Compose是一个部署多个容器的简单但是非常必要的工具.安装Docker-Compose之前,请先安装 python-pip

902
来自专栏A周立SpringCloud

Docker系列教程14-Docker数据持久化

容器中数据持久化主要有两种方式: 数据卷(Data Volumes) 数据卷容器(Data Volumes Dontainers) 数据卷 数据卷是一个可供一个...

3866
来自专栏分布式系统和大数据处理

基于Docker的持续集成方案(安装docker) - Part.2

Docker是近几年非常流行的一项技术,我也花了一点时间研究了一下。这篇文章简单地记录一下如何在Linux(CentOS 7)系统上安装Docker,并概述了最...

1174

扫码关注云+社区