在中国的土地上建立WordPress环境的方法是?使用Docker构建WordPress环境的步骤是?
首先
上次我介绍了使用Docker构建Apache、nginx和MySQL容器的方法。
“使用Docker构建Apache、nginx和MySQL的简单方法”
*如果你是完全的Docker初学者,可以参考上述方法进行确认。
我想要描述如何使用Docker搭建WordPress。
行为环境
我在家用Windows电脑的操作环境上安装了Docker。
– 家用电脑
– 操作系统:Windows 10
系统配置 – 容器数量为2个
首先,将以下内容分为两个部分创建容器,然后分别安装中间件。
1. WordPress容器
– WordPress
– Apache
– PHP运行环境
MySQL容器
用中文原生语言进行描述:
WordPress建设步骤
1. 网络创建
在Docker中,如果正常创建一个容器,容器之间无法通信。
需要创建一个名为”网络”的资源,并将它们加入同一个网络中。
■创建网络命令
docker network create wordpress-network
可以使用命令 “docker network create 网络名称” 来创建网络。
将两个容器分别加入到 “wordpress-network” 中。
■网络详细确认
docker network inspect wordpress-network
查看 <网络名称> 的 Docker 网络
<示例输出结果>
> docker network inspect wordpress-network
[
{
"Name": "wordpress-network",
"Id": "286023ed2d2522ba69987ef342458633463783e6ca2f18fa1c350935855ef40a",
"Created": "2021-07-25T02:39:04.7728767Z",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": {},
"Config": [
{
"Subnet": "172.19.0.0/16",
"Gateway": "172.19.0.1"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {},
"Options": {},
"Labels": {}
}
]
如果想查看Docker内的网络列表,就是这个感觉。
> docker network ls
NETWORK ID NAME DRIVER SCOPE
ae6193baa836 bridge bridge local
2935816942a2 host host local
d7965802ece4 none null local
286023ed2d25 wordpress-network bridge local
如果想要删除网络的话
docker network rm <ネットワーク名>
创建网络后,接下来要创建适用于MySQL的容器。
2. 创建MySQL容器(共有九个选项)
首先需要创建一个MySQL数据库,因为没有WordPress所需的数据库,无法创建Word文档。
创建一个MySQL容器
docker run --name mysql-db01 -dit --net=wordpress-network -e MYSQL_ROOT_PASSWORD=password -e MYSQL_DATABASE=wordpress-db1 -e MYSQL_USER=testuser -e MYSQL_PASSWORD=password mysql --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --default-authentication-plugin=mysql_native_password
<选项描述>
–name =容器名称
-dit =后台执行
-net =网络名称
-e MYSQL_ROOT_PASSWORD =root用户密码
MYSQL_DATABASE =数据库区域名称
MYSQL_USER =mysql用户名
-e MYSQL_PASSWORD =mysql用户密码
mysql 镜像名称
–character-set-server 字符集
–collation-server 排序规则指定
–default-authentication-plugin 认证方式(MySQL8.0以后默认的认证方式改变,但是仍支持旧的方式,因此指定使用旧的方式)
■例子来看,制作结果如下。
> docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9bfad82ef88e mysql "docker-entrypoint.s…" 8 seconds ago Up 6 seconds 3306/tcp, 33060/tcp mysql-db01
创建了一个名为mysql-db01的容器。
创建WordPress容器。
最后创建WordPress容器。
以下是需要注意的事项:
☆ 指定相同的网络
★ 数据库容器名称、数据库区域名称、用户名、密码需要与创建MySQL容器时的值保持一致。
■创建WordPress容器
docker run --name wordpress01 -dit --net=wordpress-network -p 8085:80 -e WORDPRESS_DB_HOST=mysql-db01 -e WORDPRESS_DB_NAME=wordpress-db1 -e WORDPRESS_DB_USER=testuser -e WORDPRESS_DB_PASSWORD=password wordpress
<选项说明>
–name=wordpress容器名称
-dit=后台运行
-net=网络名称
-p 端口指定(本地:公共)
-e WORDPRESS_DB_HOST=数据库容器名称
-e WORDPRESS_DB_NAME=数据库区域名称
-e WORDPRESS_DB_USER=数据库用户名
-e WORDPRESS_DB_PASSWORD=数据库用户密码
wordpress 镜像名称
> docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
087da6ef9f10 wordpress "docker-entrypoint.s…" 2 seconds ago Up 2 seconds 0.0.0.0:8085->80/tcp, :::8085->80/tcp wordpress01
创建了一个名为wordpress01的容器。
4. 网络连接确认
如果能够创建WordPress容器,让我们尝试在浏览器中访问指定的WordPress创建端口。
http://localhost:8085/

最后
网络的建立和WordPress的安装容易完成了,这样好吗? 下次我会告诉你“挂载卷的方法”。
参考阐述
『使用Docker构建Apache、nginx、MySQL的简单方法』