制作dockerfile的流程

 吴钧隆362 发布于 2022-10-30 09:36

最近看了一些Docker相关的知识,对制作dockerfile的流程有一些不明白的地方。

假如要制作一个基于Ubuntu的包含Nginx、MySQL、PHP等服务的dockerfile,我现在的流程是:

  • docker run一个基本的Ubuntu镜像

  • 更新系统依赖包,如:apt-get update,在文本文档记录执行的命令

  • 安装Nginx,在文本文档记录安装Nginx执行的步骤

  • ....

等于说是先把流程跑一遍,记录下所有执行的命令,然后再把这些步骤复制到dockerfile里。

个人感觉这样做是不对的,请问大家都是怎么做的??

2 个回答
  • 通过参考docker hub上现成的dockerfile 再根据自己的需求修改,这样的效率会更高一些,从头写dockerfile只能按照楼上的兄弟那样操作了,我称之为“录像机”方式。

    2022-10-31 20:46 回答
  • 很正确呀。假如你非常熟悉所有的流程,自然可以直接编写Dockerfile。但这种事情基本不能绝对的保证,特别是Docker的基础系统镜像大多都非常精简,一些软件的依赖包都需要进行下载安装,所以自己通过容器实践一次搭建的过程虽然有些耗时,但相对来说反而要比空想写Dockerfile要节约时间。

    通常来说编写Dockerfile是这样一个流程:

    1. 通过容器预演安装过程,记录下搭建命令

    2. 对安装命令进行汇总、优化,编写Dockerfile

    3. 尝试使用Dockerfile构建镜像,检查是否存在问题

    4. 通过构建的镜像建立容器,确保其中的程序能够正确使用

    2022-10-31 20:46 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有