0
点赞
收藏
分享

微信扫一扫

Docker-compose部署wordpress

    Docker-compose作为Docker官方的开源项目,负责实现对Docker容器集群的快速编排。Docker-compose可批量管理Docker服务器上的容器,并解决这些容器之间的依赖关系。

    Docker和Docker-compose的安装部分,笔者在安装Harbor仓库一篇已有演示,此篇直接演示如何部署wordpress。

  1. 规划目录

    生产中,我们可能会要使用Docker-compose部署很多的项目,为了方便区分,建议提前规划好目录。

    例如笔者是实验环境,部署的为wordpress站点,则可以在/data/目录下创建wordpress目录。同时wordpress是要有一个web服务器和一个数据库服务器的,则可以在/data/wordpress目录创建web和mysql子目录,并在容器启动时挂载到容器中之久保存数据。

Docker-compose部署wordpress_docker


  1. 拉取镜像

    wordpress站点的部署需要准备好wordpress镜像和MySQL镜像,生产中建议根据实际需求去制作镜像,实验环境笔者就直接通过Docker官方来拉取对应的镜像latest版本。

Docker-compose部署wordpress_数据库_02

Docker-compose部署wordpress_镜像_03


  1. 创建docker-compose.yml文件

3.1 docker-compose.yml文件

    利用Docker-compose进行容器的编排时,需要创建docker-compose.yml文件(也可使用yaml后缀),并且只能从当前目录读取该文件。按照规划,笔者需在/data/wordpress目录中创建该文件,yml文件内容如下:

Docker-compose部署wordpress_镜像_04

Docker-compose部署wordpress_镜像_05

3.2 文件内容说明

    docker-compose.yml文件中主要要包含版本、服务和容器三块的信息。

3.2.1 版本

    version部分表示Docker-compose进行容器编排时要使用的版本,一共有1、2、2.x和3.x四类选择,当前主要使用2.x和3.x两个主版本,不同版本需要宿主机中Docker版本的支持,具体对应关系如下图所示:

Docker-compose部署wordpress_mysql_06

3.2.2 服务

    services表示要利用Docker-compose启动的服务,包括下面的wordpress和mysql-server两个。

3.2.3 容器

    容器即具体服务所对应的内容,以wordpress服务部分为例:

    ①image表示服务要使用的镜像;

    ②container_name表示根据镜像所启动的容器名称,可不设置;

    ③restart设为always表示容器虽宿主机的重启而自动启动;

    ④expose部分表示暴露端口,可以省去;

    ⑤ports部分表示宿主机与容器的端口映射;

    ⑥environment部分表示容器要使用的环境变量,其中WORDPRESS_DB_HOST表示wordpress容器要使用的数据库服务器名称,对应MySQL服务名,WORDPRESS_DB_NAME、WORDPRESS_DB_USER和WORDPRESS_DB_PASSWORD分别表示要使用MySQL服务的数据库名、数据库用户名和数据库密码

    ⑦volumes部分表示要使用数据卷,将宿主机的/data/wordpress/web目录挂载wordpress容器网站根目录中。

    mysql-server服务部分与wordpress服务类似,需要注意的是数据库相关信息要与wordpress服务部分保持一致。

3.3 检测文件语法

    docker-compose.yml文件创建好后,建议执行docker-compose config -q检查一下是否有错误,无错误不会输出信息;也可以去掉-q选项,会根据编写的yml文件给出参考格式。

Docker-compose部署wordpress_容器_07


  1. 启动并查看容器

    在docker-compose.yml文件所在的目录执行docker-compose up -d命令启动容器。

Docker-compose部署wordpress_容器_08

    查看容器时,我们可以用docker-compose ps命令,也可使用docker ps命令。

Docker-compose部署wordpress_镜像_09


  1. 站点初始化

    利用Docker-compose部署的wordpress在进行初始化时流程较少,浏览器中输入宿主机IP即可进行站点初始化,并且设定了登录名和密码后即可登录进行后续操作,具体流程如下:

Docker-compose部署wordpress_docker_10

Docker-compose部署wordpress_docker_11

Docker-compose部署wordpress_容器_12

Docker-compose部署wordpress_docker_13

Docker-compose部署wordpress_镜像_14

Docker-compose部署wordpress_容器_15

Docker-compose部署wordpress_镜像_16

举报

相关推荐

0 条评论