WordPress + OLS

2022-05-18
2022-05-18
3 min read
Hits

  这个标题是 OpenLiteSpeed 官方文档 的标题。但准确来说应该是:在最新版的 Ubuntu 22.04 LTS 系统上使用最新版的 Docker 容器部署最新版的 OpenLiteSpeed 并安装最新版的 WordPress。

系统要求

  建议选择与博主一样的系统版本进行搭建:搬瓦工 Ubuntu 22.04 x86_64

友情提示:搬瓦工 可能需要先翻墙才可访问!

  建议使用原版纯净系统进行安装。首次进入系统,可以根据 Ubuntu 优化 进行优化。

安装 Docker

sudo apt remove docker docker-engine docker.io containerd runc     # 卸载旧版本
sudo apt update     # 更新软件包索引
sudo apt-get install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release     # 安装 Docker 所需的软件包
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg     # 添加 Docker 的官方 GPG 密钥
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null     # 设置稳定存储库
sudo apt update     # 更新软件包索引
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin     # 安装 Docker 和 Docker Compose

  至此 Docker 环境安装完成,接下来开始在 Docker 中部署 OpenLiteSpeed 和 WordPress

安装的组件

  我们先了解一下在 Docker 中部署 OpenLiteSpeed 和 WordPress,会安装哪些组件。

组件版本
LinuxUbuntu 20.04
OpenLiteSpeedLatest version
MariaDBStable version:10.5
PHPLatest version
LiteSpeed CacheLatest from WordPress.org
ACMELatest from ACME official
wordPressLatest from WordPress
phpMyAdminLatest from dockerhub

开始安装

git clone https://github.com/litespeedtech/ols-docker-env.git     # 克隆此存储库或将此存储库中的文件复制到新文件夹中
cd ols-docker-env/     # 进入保存的文件夹

打断一下,到目前为止所有的步骤都是依据官方文档一步步下来的。但是接下来会存在一个致命问题,就是新版的 Docker Compose 的命令已经修改,所以官方提供的所有脚本都需要更改 Docker Compose 的命令:将 docker-compose 替换为 docker compose(是的没错,就是将短横线改成空格,要不然命令无法执行!)

替换命令

  所以我们不得不停止安装步骤,先进入每一个可能会用到的 shell 脚本,替换 Docker Compose 的命令。

  此处又得再插一句,替换 Linux 文件中的某些内容,可以使用“vi”对文件进行编辑,而后输入

:.,$s/**替换前**/**替换后**/g     # 此命令意为:从当前所在行至最后一行,将所有“替换前”的内容,替换为“替换后”的内容

  掌握了上述命令,就不必再人工一行行的查找需要被替换的内容了,大大提高了我们的生产效率。所以接下来我们继续进入每一个 shell 脚本,开始替换 Docker Compose 命令

vi bin/webadmin.sh     # OpenLiteSpeed 面板脚本
vi bin/demosite.sh     # 演示站点脚本
vi bin/domain.sh     # 域名脚本
vi bin/database.sh     # 数据库脚本
vi bin/appinstall.sh     # WordPress 脚本
vi bin/acme.sh     # SSL 自动签发脚本

  将上述六个 shell 脚本中的 docker-compose 全部替换为 docker compose 后,我们就可以继续安装了。

继续安装

docker compose up -d     # 使用守护程序模式运行 Docker 容器
bash bin/webadmin.sh my_password     # 设置 OpenLiteSpeed 网络管理员密码(账号为 admin)
bash bin/demosite.sh     # 启动演示站点
bash bin/domain.sh -A example.com     # 创建域名和虚拟主机(OLS 中的概念,可以理解为创建一个网站空间)
bash bin/database.sh -D example.com     # 创建数据库(自动生成用户、密码和数据库名称)
bash bin/database.sh -D example.com -U USER_NAME -P MY_PASS -DB DATABASE_NAME     # 使用此命令指定数据库的用户、密码和数据库名称
./bin/appinstall.sh -A wordpress -D example.com     # 安装 WordPress 网站
./bin/acme.sh -I -E EMAIL_ADDR     # 运行 ACME 安装命令,使用电子邮件通知
./bin/acme.sh -D example.com     # 签发网站 SSL 证书
bash bin/webadmin.sh -M enable     # 在 Web 服务器上启用 OWASP ModSecurity

  至此我们在最新版的 Ubuntu 22.04 LTS 系统上使用最新版的 Docker 容器部署最新版的 OpenLiteSpeed 并安装最新版的 WordPress 的工作就完成了。

Enjoy your WordPress!

Extend

  如果你只需要搭建一个 WordPress 且不打算再维护更新,那就不用再往下看了。下面记录了一些后台地址和可能会用到的命令。

后台端口

  • 7080:OLS 网络管理
  • 8080:phpMyAdmin http 访问
  • 8443:phpMyAdmin https 访问

  登录数据库的账号和密码为刚才安装时通过 bash bin/database.sh -D example.com 命令生成的密码。

Docker 命令

docker-compose up     # 启动容器
docker-compose up -d     # 使用守护程序模式运行 Docker 容器
docker-compose stop     # 停止容器
docker-compose down     # 删除容器

OLS 相关

bash bin/domain.sh -D example.com     # 删除域和虚拟主机
bash bin/webadmin.sh -U     # 更新网络服务器
bash bin/webadmin.sh -M disable     # 在 Web 服务器上禁用 OWASP ModSecurity

官方文档中有针对“php.ini”的操作,但截止本文发布前,经博主测试均为 php.ini 路径有误,故不推荐使用官方文档命令修改或覆盖 php.ini 文件。

Avatar

Hui.Ke

❤ Cyber Security | Safety is a priority.