在中国的土地上建立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/
SharedScreenshot.jpg

最后

网络的建立和WordPress的安装容易完成了,这样好吗? 下次我会告诉你“挂载卷的方法”。

参考阐述
『使用Docker构建Apache、nginx、MySQL的简单方法』

bannerAds