Linux服务器构建与运维管理-CentOS-实验12:基于Docker部署WordPress发网站
棒棒堂智能运维
编辑于 2026年03月11日 19:51
收录于文集
共17篇

一、实验目的

1、了解Docker容器技术;

2、掌握基于Docker部署MySQL数据库;

3、掌握基于Docker部署WordPress实现网站系统。

二、实验学时

2学时

三、实验类型

综合性

实验需求

1、硬件

每个人配备计算机1台。

2、软件

Windows操作系统,安装Oracle VM VirtualBox软件,安装MobaXterm软件。

3、网络

本地主机与虚拟机能够访问互联网,不使用DHCP服务。

4、工具

无。

五、实验任务

1、完成Docker环境的安装;

2、完成基于Docker部署MySQL数据库;

3、完成基于Docker部署WordPress。

六、实验环境

1、本实验需要VM 1台;

2、本实验VM配置信息如下表所示;

3、本实验拓扑图。

无。

4、本实验操作演示视频。 

本实验为视频集的第9集:网页链接​

七、实验内容步骤

1、安装Docker环境

(1)使用curl命令配置Docker数据源。

(2)使用yum命令安装Docker环境,查看Docker版本信息,启动Docker服务,设置Docker服务为开机自启动并查看Docker服务状态。

代码块
Shell
自动换行
复制代码
# 配置docker数据源
[root@Lab-12-Task-01 ~]# curl -o /etc/yum.repos.d/docker-ce.repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 安装dokcer
[root@Lab-12-Task-01 ~]# dnf -y install docker-ce
# 查看Docker版本信息
[root@Lab-12-Task-01 ~]# docker --version
# 启动docker服务
[root@Lab-12-Task-01 ~]# systemctl start docker
# 设置docker服务为开机自启动
[root@Lab-12-Task-01 ~]# systemctl enable docker
# 查看docker服务状态
[root@Lab-12-Task-01 ~]# systemctl status docker
复制成功

2、安装MySQL数据库

(1)使用docker pull命令拉取MySQL镜像。

(2)使用docker images命令查看Docker镜像列表。

(3)使用docker run命令创建启动MySQL容器,并查看容器列表。

(4)使用docker exec命令进入容器内部。

代码块
Shell
自动换行
复制代码
# 拉取MySQL镜像
[root@Lab-12-Task-01 ~]# docker pull mysql:latest

# 查看docker镜像列表
[root@Lab-12-Task-01 ~]# docker images

# 创建并启动MySQL容器,并将MySQL数据、配置、日志所在目录映射到宿主机,将容器3306端口映射到宿主机3306端口,设置root用户密码为:mysqllab#PWD
[root@Lab-12-Task-01 ~]# docker run -d \
    -p 3306:3306 \
    -v /mydata/mysql/conf:/etc/mysql/conf.d \
    -v /mydata/mysql/data:/var/lib/mysql \
    -v /mydata/mysql/log:/var/log/mysql \
    -e MYSQL_ROOT_PASSWORD=mysqllab#PWD \
    --restart=always \
    --name mysql \
    mysql

# 查看容器列表
[root@Lab-12-Task-01 ~]# docker ps
# 进入容器内部
[root@Lab-12-Task-01 ~]# docker exec -it mysql /bin/bash

# 连接MySQL数据库
bash-4.4# mysql -uroot -pmysqllab#PWD
mysql> exit
复制成功

3、安装WordPress网站服务

(1)使用docker pull命令拉取WordPress镜像。

(2)使用docker images命令查看Docker镜像列表。

(3)使用docker run命令创建启动WordPress容器,并查看容器列表。

代码块
Shell
自动换行
复制代码
# 拉取WordPress镜像
[root@Lab-12-Task-01 ~]# docker pull wordpress:latest
# 查看Docker镜像列表
[root@Lab-12-Task-01 ~]# docker images
# 创建并启动WordPress容器,将WordPress文件所在目录映射到宿主机,并将容器80端口映射到宿主机8080端口
[root@Lab-12-Task-01 ~]# docker run -d \
    -p 8080:80 \
    --restart=always \
    --name wordpress \
    --link mysql:mysql \
    -v /var/www/html:/var/www/html \
    wordpress
# 查看容器列表
[root@Lab-12-Task-01 ~]# docker ps
复制成功

4、配置WordPress网站服务

(1)查看防火墙Firewalld服务状态(CentOS操作系统默认安装Firewalld防火墙,并创建firewalld服务,该服务已开启且已配置为开机自启动)。

(2)使用firewall-cmd命令添加所有客户端可访问8080、3306端口,并重新载入防火墙配置使其生效。

(3)使用docker exec命令进入容器内部,并连接MySQL数据库。

(4)使用create database wordpress命令创建数据库,使用create user命令创建数据库用户,并授予该用户对数据库wordpress的全部权限。

(5)使用flush privileges;命令刷新配置,并退出连接。

代码块
Shell
自动换行
复制代码
# 查看防火墙Firewalld服务状态
[root@Lab-12-Task-01 ~]# systemctl status firewalld

# 允许访问8080端口
[root@Lab-12-Task-01 ~]# firewall-cmd --add-port=8080/tcp --permanent
# 允许访问3306端口
[root@Lab-12-Task-01 ~]# firewall-cmd --add-port=3306/tcp --permanent
# 重新载入防火墙配置使其生效
[root@Lab-12-Task-01 ~]# firewall-cmd --reload

# 进入容器内部
[root@Lab-12-Task-01 ~]# docker exec -it mysql /bin/bash
# 连接MySQL数据库
bash-4.4# mysql -uroot -pmysqllab#PWD

# 创建数据库wordpress,创建数据库用户,授予该用户对数据库wordpress的全部权限
mysql> create database wordpress;
mysql> create user 'mysqllab'@'%' identified by 'mysqllab#PWD';
mysql> grant all privileges on wordpress.* to 'mysqllab'@'%';

# 刷新配置,并退出数据库连接
mysql> flush privileges;
mysql> exit
复制成功

在本地主机通过浏览器访问http://172.20.1.25:8080,并按照提示完成WordPress的初始化配置。