用docker部署WordPress
安装docker
- 安装需要的软件包
yum install -y yum-utils
- 设置镜像仓库
不能直接执行官网的设置镜像仓库命令。因为docker.com是国外的。会很慢。可能会报错
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
- 更新yum软件包索引
yum makecache fast
- 安装docker engine
yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
启动docker
systemctl start docker
- 命令输入后,没有报错。就是好消息。我们可以使用ps查看下,出现如图就没问题了:
ps -ef|grep docker
部署WordPress
-
首先要拉取WordPress最新版本的镜像
docker pull wordpress:latest
-
安装mysql
wordpress基于php+mysql 所以需要安装mysql数据库,这里安装mysql5.7 版本。
docker pull mysql:5.7
-
运行mysql5.7
docker run -d --privileged=true --name mysql5.7 -v /data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3206:3306 mysql:5.7
-
运行wordpress容器
docker run --name wp --link mysql5.7 -p 1080:80 -d wordpress
-
防火墙设置
开启防火墙后设置端口开放式。
systemctl start firewalld # 开启防火墙
firewall-cmd --zone=public --add-port=1080/tcp --permanent # 设置1080端口开放
firewall-cmd --list-ports # 查看开放端口
如果顺利执行了但却没有成功开放
可以试试重新加载防火墙配置firewall-cmd --reload
浏览器访问测试
输入你的公网ip+1080 测试是否可以正常访问。效果如下图:示例:127.0.0.1:1080
填写数据库信息
配置数据库
进入MySQL容器及创建账号
docker exec -it mysql5.7 bash
mysql -u root -p #root密码是123456
创建用户并开启远程登录
CREATE USER '你的账号'@'%' IDENTIFIED BY '你的密码';
创建数据库并设置字符集
CREATE DATABASE `库名` CHARACTER SET 'utf8mb4';
给账号授权数据库
GRANT ALL PRIVILEGES ON `库名`.* TO '你的账号'@'%';
刷新权限
FLUSH PRIVILEGES;
- CTRL+P+Q退出容器
查找数据库主机IP
检查Docker容器运行状态docker ps
查看Docker容器网络配置
docker inspect <container_id_or_name>
查看输出信息中的 "IPAddress" 来找到数据库的内部IP
填写WordPress配置
-
数据库配置
-
输入网站信息,比如网站标题、登录用户名、密码等。
-
然后就行了