当你需要制作一个镜像,尤其是中间件镜像时,最好的选择是先去 Docker Hub 搜索是否已有相关的官方镜像。基于官方镜像或者别人发布的镜像来进行定制化比自己从头做一个镜像更方便更可靠。
Docker Hub 是世界上最大的 Docker 镜像仓库,Docker 官方和世界各地的开发者都在这上面发布自己制作的镜像。在这里你可以找到各种镜像的使用说明,也能找到其 Dockerfile 来学习。比如我们上面使用官方的 MySQL 镜像来定制化,那么 ROOT 密码该怎么设置,数据挂载点在哪里,开放了哪些端口这些问题,你都能在镜像文档中找到答案。
最后Docker 镜像的制作技术非常简单,难点在于你是否能够事先规划好镜像内容。当你编写 Dockerfile 时,你的脑海里应该具有镜像制作完成之后的一个全貌,这样你编写的 Dockerfile 才是可靠有效的。编写 Dockerfile 其实就像是给你一个干净的操作系统,让你去安装软件,设置目录,启动应用类似,明确了目的,流程就会很清晰。