构建镜像 - 每天5分钟玩转容器技术(12)

网友投稿 697 2023-03-09

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

构建镜像 - 每天5分钟玩转容器技术(12)

对于 Docker 用户来说,最好的情况是不需要自己创建镜像。几乎所有常用的数据库、中间件、应用软件等都有现成的 Docker 官方镜像或其他人和组织创建的镜像,我们只需要稍作配置就可以直接使用。

使用现成镜像的好处除了省去自己做镜像的工作量外,更重要的是可以利用前人的经验。特别是使用那些官方镜像,因为 Docker 的工程师知道如何更好的在容器中运行软件。

当然,某些情况下我们也不得不自己构建镜像,比如:

(1)找不到现成的镜像,比如自己开发的应用程序。

(2)需要在镜像中加入特定的功能,比如官方镜像几乎都不提供 ssh。

所以本节我们将介绍构建镜像的方法。同时分析构建的过程也能够加深我们对前面镜像分层结构的理解。

Docker 提供了两种构建镜像的方法:

(2)Dockerfile 构建文件

(1)运行容器

(2)修改容器

(3)将容器保存为新的镜像

举个例子:在 ubuntu base 镜像中安装 vi 并保存为新镜像。

一:第一步, 运行容器

-it 参数的作用是以交互模式进入容器,并打开终端。412b30588f4a 是容器的内部 ID。

(1)安装 vim

确认 vim没有安装。

安装 vi。

(2)保存为新镜像

(1)这是一种手工创建镜像的方式,容易出错,效率低且可重复性弱。比如要在 debian base 镜像中也加入 vi,还得重复前面的所有步骤。

(2)更重要的:使用者并不知道镜像是如何创建出来的,里面是否有恶意程序。也就是说无法对镜像进行审计,存在安全隐患。

下一节我们学习如何通过 Dockerfile 构建镜像。

上一篇:Dockerfile 构建镜像 - 每天5分钟玩转容器技术(13)
下一篇:镜像的分层结构 - 每天5分钟玩转容器技术(11)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~