在 Docker 容器中部署 WordPress
了解如何手动和使用 Docker Compose 在 Docker 容器中运行 WordPress 安装。 WordPress 开发人员会发现在 Docker 容器中部署 WordPress 很有用。 Docker 允许您测试多个 WordPress 配置,并使用一些简单的命令启动全新的 WordPress 安装。
要求
-
运行 CentOS 7 或 Ubuntu 14.04 的服务器
-
Web 服务已安装并正在运行。
-
Docker 安装并运行。
-
Docker使用和命令的基本知识。
-
可选:对 Docker Compose 的基本了解。
在 Docker 容器中运行 WordPress
成功的 WordPress 安装包含三个要素:
-
WordPress软件
-
MySQL 或 MariaDB 数据库
-
最后的安装步骤,在浏览器中完成
对于以下示例,WordPress 和 MySQL/MariaDB 组件将在单独的链接容器中运行。运行 WordPress 软件的容器将被映射到主机上的一个端口,这将允许您在浏览器中访问它。
运行 MySQL/MariaDB 容器
首先,使用 mysql-password 的 root 密码运行一个名为 my-db 的容器。您可以使用MySQL 或 MariaDB,这是 MySQL 的直接替代品。
笔记
请务必将 db-password 更改为安全密码。
MySQL
使用以下命令启动容器:
sudo docker run --name my-db -e MYSQL_ROOT_PASSWORD=db-password -d mysql
玛丽亚数据库
使用以下命令启动容器:
sudo docker run --name my-db -e MYSQL_ROOT_PASSWORD=db-password -d mariadb
运行一个 WordPress 容器
接下来,从官方 WordPress 镜像运行一个容器,该镜像映射到主机端口 8080 并链接到数据库容器。
两个注意事项:
-
如果你有防火墙,你可能需要添加对8080端口的访问。
-
如果您已经在 8080 端口上运行了另一个服务,您可以在主机上选择不同的端口。
根据您使用的是 MySQL 还是 MariaDB,该命令会略有不同:
MySQL
使用以下命令启动 WordPress 容器:
sudo docker run --name my-wordpress -p 8080:80 --link my-db:mysql -d wordpress
玛丽亚数据库
使用以下命令启动 WordPress 容器:
sudo docker run --name my-wordpress -p 8080:80 --link my-db:mariadb -d wordpress
如果您想覆盖默认值,您可以将许多其他环境变量添加到此命令,包括:
-
-e WORDPRESS_DB_HOSTu003d[hostname] 默认是链接的 MySQL/MariaDB 容器的 IP 地址和端口。您可以使用此变量访问另一台服务器上的 MySQL/MariaDB 数据库。
-
-e WORDPRESS_DB_USERu003d[用户名] 默认为root。
-
-e WORDPRESS_DB_PASSWORDu003d[password] 默认是链接的 MySQL/MariaDB 容器的 MYSQL_ROOT_PASSWORD 环境变量。
-
-WORDPRESS_DB_NAMEu003d[name] 默认为“wordpress”。
在浏览器中完成安装
对于最后的安装步骤,您需要从浏览器访问 WordPress 容器。
在前面的示例中,我们将主机上的端口 8080 映射到容器上的端口 80(Web 服务)。这允许您使用服务器的 IP 地址或 URL 在浏览器中访问容器:
-
http://192.168.0.1:8080
-
http://example.com:8080
在浏览器中访问网址,选择您的安装语言,然后点击继续。
在下一页上,填写字段。
-
网站标题:填写您网站的标题。
-
用户名:这将是您站点的主要管理用户名。注意:出于安全原因,我们建议您不要使用“管理员”或您网站的名称或 URL 作为此用户名。
-
密码:在继续之前记下此密码。
-
您的电子邮件:这将是主要管理用户名的电子邮件地址。
然后点击 Install WordPress 按钮完成安装。
使用 Docker Compose 运行 WordPress
使用 Docker Compose 很容易启动 WordPress 安装。有关安装和使用 Docker Compose 的信息,请参阅我们的文章Docker:使用 Swarm 和 Compose 编排多容器应用程序。
创建YAML文件
首先,为您的项目创建一个目录并进入其中:
sudo mkdir wordpress cd wordpress
使用以下命令创建一个名为 docker-compose.yml 的 YAML 文件:
sudo nano docker-compose.yml
根据您使用的是 MySQL 还是 MariaDB,文件的内容会略有不同:
MySQL
将以下内容放入文件中:
wordpress: image: wordpress links: - wordpress_db:mysql ports: - 8080:80 wordpress_db: image: mysql environment: MYSQL_ROOT_PASSWORD: db-password
笔记
请务必将 db-password 更改为安全密码。
保存并退出文件。
玛丽亚数据库
将以下内容放入文件中:
wordpress: image: wordpress links: - wordpress_db:mariadb ports: - 8080:80 wordpress_db: image: mariadb environment: MYSQL_ROOT_PASSWORD: db-password
笔记
请务必将 db-password 更改为安全密码。
保存并退出文件。
启动容器
接下来,使用 Docker Compose 通过以下命令启动这些容器:
sudo docker-compose up -d
您可以使用以下命令验证容器是否已创建:
sudo docker-compose ps
原文链接:https://devpress.csdn.net/wordpress/632dba9e357a883f870c8395.html