用容器技术搭建并运行企业网站,需要经历三个主要过程:

  • 构建(build):把应用代码和运行环境一起,制作成镜像文件
  • 发布(release):将镜像文件发布到镜像仓库。
  • 运行(run):从镜像仓库中获取镜像并运行。

 

容器镜像如何构建


容器镜像构建步骤_Docker

将WordPress应用制作成容器镜像

Docker镜像制作通常有两种方式:

  1. 基于docker commit 制作镜像。
  2. 基于Dockerfile制作镜像,为主流镜像的制作方式。

Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。我们可以理解Dockfile是一种被Docker程序解释的脚本,Dockerfile由一条一条的指令组成,每条指令对应Linux下面的一条命令。Docker程序读取Dockerfile,解决这些命令间的依赖关系,根据指令生成定制的镜像。

相比镜像这种黑盒子,Dockerfile这种显而易见的脚本更容易被开发者接受,它明确的表明镜像是怎么产生的。有了Dockerfile,当我们需要定制自己额外的需求时,只需在Dockerfile上添加或者修改指令,重新生成镜像即可,省去了敲命令的麻烦。

Dockerfile文件的编写需要遵循相应的要求和规范,Docker官方提供了相应的说明和指导,如果您想学习这方面的知识,建议可以参考Docker官方文档:Dockerfile参考

基于Dockfile构建镜像并运行,会经历如下过程:


容器镜像构建步骤_Docker_02

其中Dockerfile、Image、Container的关系如下:

  • Dockerfile是软件开发的基础
  • Docker镜像(Image)是软件的交付品
  • Docker容器(Container)则可以认为是软件的运行态
  • Dockerfile面向开发,Docker镜像成为交付标准,Docker容器则涉及部署、运行与运维,三者共同构成了 Docker 技术的底座。

 

构建网站应用镜像的步骤

明白以上原理之后,我们知道构建网站应用的WordPress镜像之前,需要先编写好Dockerfile文件。在本次课程中为了验证快速搭建网站,所以使用Docker官方镜像提供的WordPress的Dockerfile文件。

整体步骤如下(具体操作会在实验环节中呈现)

1、创建WordPress镜像制作目录。

# 创建WordPress镜像制作目录makeWordpress并进入该目录

mkdir -p /makeWordpress

cd /makeWordpress

2、下载Dockerfile文件和docker-entrypoint.sh预处理脚本,赋予脚本执行权限。

# 下载Dockerfile文件和配置文件

wget https://raw.githubusercontent.com/docker-library/wordpress/841f2801d0a6d0cf73321a5554d6bade4c143417/php7.3/apache/Dockerfile

wget https://raw.githubusercontent.com/docker-library/wordpress/841f2801d0a6d0cf73321a5554d6bade4c143417/php7.3/apache/docker-entrypoint.sh


# 设置文件权限

chmod 755 docker-entrypoint.sh

3、运行Docker build命令,利用Dockerfile制作WordPress镜像。

# 制作wordpress镜像,并存放到makeWordpress目录

docker build -t="wordpress:v1" /makeWordpress

4、运行Docker images查看制作出的镜像。

# 查看构建完成的镜像

docker images

容器镜像构建步骤_Dockerfile_03