前言
在 Google Cloud Platform 或其他的 VPS 上想拥有快速架设网站的方式,可以选择 WordOps,其架构是参考 EasyEngine 开发出来的,而且可以快速产生多种 WordPress 架构,再加上免费开源,所以很推荐使用。
WordOps
功能
- 简单安装:一键式自动安装,支持从 EasyEngine v3 迁移
- 快速建置:快速自动化建置 WordPress,Nginx,PHP,MySQL 和 Redis
- 自定义 Nginx 架构:Nginx 1.18.0-TLS v1.3 Cloudflare HTTP / 2 HPACK 和支持 Brotli
- 最新版本:PHP 7.2 、 7.3 和 7.4,MariaDB 10.5 和 Redis 6.0
- 安全:透过严格的 Nginx 位置指令来加强 WordPress 安全性
- 强大:具备支持多个后端暂存的 Nginx 设置
- SSL:我们使用 DNS API 加密 SSL 证书来支持主域名,子域名和通配符域名
- 新式的:强大的 ciphers_suite,支持最新的 TLS 协议和 HSTS( ssllabs 的 A+ 级)
- 监控:使用 ngx_vts_module 即时监控 Nginx 虚拟主机流量,以及使用 Netdata 监控服务器
- 使用者友好接口:WordOps 仪表板,内建服务器状态/监控和工具(展示)
环境需求
最低需求
WordOps 非常轻巧,不需要占用大量资源,可以安装在 Raspberry PI 等低阶装置上。
最低需求:
- 约 100MB 的储存空间
- 512MB 内存
推荐需求
但是,如果要在正式环境中使用 WordOps,像是某些服务(例如 MySQL 或 Redis)可能需要更多资源,而在没有足够资源的情况下执行 WordOps stacks 可能会影响网站效能。而您的网站流量也会大幅度决定占用资源的程度。
推荐用于正式环境的硬件需求:
- 多核心 CPU
- 20GB SSD 储存空间
- 2GB 内存
虚拟化
支持以下虚拟化平台:
- VMware
- XEN
- OpenVZ
- KVM
- Hyper-V
- LXC / LXD
WordOps 还与在 Windows Linux 子系统(WSL)上执行的 Ubuntu 相容。
软件需求
操作系统
支持以下操作系统:
系统 | 版本 | 架构 |
---|---|---|
Ubuntu | 20.04 LTS (focal) | x86_64 |
18.04 LTS (bionic) | x86_64 | |
16.04 LTS (xenial) | x86_64 | |
Debian | 9 (stretch) | x86_64 |
10 (buster) | x86_64 | |
Raspbian | 9 (stretch) | armv7l |
10 (buster) | armv7l |
端口
服务 | 端口 | 入 | 出 | 备注 |
---|---|---|---|---|
SSH | 22 | ✓ | ✓ | SSH 默认或自定端口 |
HTTP | 80 | ✓ | ✓ | Nginx 在端口 80 上监听 |
HTTPS | 443 | ✓ | ✓ | Nginx 在端口 443 上监听 |
WordOps 后端 | 22222 | ✓ | ✓ | WordOps 后端在端口 22222 上可用,并受密码保护 |
GnuPG | 1137 | ✓ | 汇入 APT 储存库必需的 GPG 金钥 |
安装
官方提供了一个安装命令行,可以在设置 WordOps 前安装所需的依赖项目,可以使用以下指令安装
wget -qO wo wops.cc && sudo bash wo
安装命令行执行哪些步骤?
- 安装 WordOps 依赖项目
- 启用自动安全更新升级
- 启用 NTP 世界时间同步
- 检测以前的 EasyEngine 或 WordOps 安装是否存在
- 将现有网站站点汇入 WordOps
- 安装 WP-CLI
- 安装 Acme.sh
- 安装 Wordops
等待一会时间,会出现要求输入名称、信箱,输入完后会显示帐号密码相关资讯,记录下来 WordOps 后端需要用到。
安装后的步骤
启用 bash_completion
要启用 WordOps 自动完成指令功能,请在安装 WordOps 后执行以下指令
source /etc/bash_completion.d/wo_auto.rc
为 sudo wo 建立别名
如果希望能够以非 root 使用者身份直接使用 wo 该指令,则可以新增 bash 别名自动以 sudo 新增在 wo 指令前面。
使用以下指令新增别名
echo -e "alias wo='sudo -E wo'" >> $HOME/.bashrc
然后用
source $HOME/.bashrc
完成建立
安装 WordOps stacks ( 可选 )
安装 WordOps 主要 stacks,想选择性安装跳过此步骤
wo stack install
以下是输入上述指令后安装的 WordOps 套件列表
套件 | 类别 | 描述 |
---|---|---|
Nginx | APT package | WordOps web server |
PHP 7.4 | APT package | PHP7.4-FPM |
MariaDB 10.5 | APT package | 开源版本 MySQL |
WP-CLI | Binary | The WordPress command-line tool |
Composer | Binary | PHP packages manager |
MySQLTuner | Binary | Command-line tool to tune MySQL |
Fail2ban | APT package | Authentication bruteforce protection |
phpMyAdmin | Web App | MySQL server web interface |
Adminer | Web App | lightweight phpMyAdmin alternative |
OpcacheGUI | Web App | web interface for Opcache monitoring |
Netdata | Binary | Monitoring suite |
Anemometer | Web App | MySQL Slow Query Monitor |
WordOps dashboard | Web App | Bootstrap template for WordOps backend |
eXtplorer | Web App | Web File manager |
cheat.sh | Binary | Command-line Linux cheatsheet |
Sendmail | APT package | Sendmail MTA |
WordOps stacks 指令用法
管理服务器 stack 用法
wo stack (command) [options]
可用 command 列表
command | 描述 |
---|---|
install | 安装 WordOps stacks |
upgrade | 升级 WordOps stack |
migrate | 升级 MariaDB stack |
remove | 移除套键 |
purge | 移除并清除套件 |
reload | 重新加载 WordOps stack |
restart | 重新执行 WordOps stack |
stop | 暂停 WordOps stack |
start | 开启 WordOps stack |
服务器 command 用法,重启 WordOps 服务
wo stack restart
可用 options 列表
options | 型别 | 描述 |
---|---|---|
--web | Group | Nginx, PHP, MySQL, WP-CLI |
--admin | Group | phpMyAdmin, Adminer, Dashboard, Netdata, MySQLTuner … |
--utils | Group | OpcacheGUI, Webgrind, Anemometer |
--nginx | APT package | nginx stack |
--php | APT package | PHP7.2-FPM stack |
--php73 | APT package | PHP7.3-FPM stack |
--php74 | APT package | PHP7.4-FPM stack |
--mysql | APT package | MariaDB stack |
--redis | APT package | Redis stack |
--wpcli | Binary | WP-CLI : WordPress CLI |
--phpmyadmin | Web App | phpMyAdmin : Web interface for MySQL |
--composer | Binary | Composer : PHP dependencies manager |
--netdata | Binary | Netdata : Real-time monitoring suite |
--dashboard | Web App | WordOps dashboard |
--extplorer | Web App | eXtplorer Filemanager |
--adminer | Web App | adminer (phpmyadmin alternative) |
--fail2ban | APT package | Fail2ban : Bruteforce protection |
--phpredisadmin | Web App | phpredisadmin : Web interface for Redis |
--proftpd | APT package | proftpd stack : FTP server |
--mysqltuner | Binary | MySQLTuner stack : MySQL tuning tool |
--ufw | APT package | UFW : Firewall |
--sendmail | APT package | Sendmail MTA |
--ngxblocker | Binary | Ultimate Nginx bad bots blocker |
--nanorc | Binary | Nano editor syntax highlighting |
套件安装用法
wo stack install [options]
如果没有 options,将会安装 WordOps 主要 stacks
基本网站安装方式
wo stack install --web
将安装 Nginx 、 PHP 7.4 、 MariaDB
管理工具安装方式
wo stack install --admin
将安装内建 WordOps-Dashboard,PHPmyAdmin,Adminer,OpcacheGUI 等工具的 WordOps 后端
安装管理工具后,可以在 http://YOUR.SERVER.IP:22222 操作
WordOps 套件升级
用法
wo stack upgrade [options]
options | 描述 |
---|---|
--all | 升级所有套件 |
--web | 升级网站套件 |
--admin | 升级管理工具 |
--nginx | 升级 Nginx |
--php | 升级 PHP 7.2 |
--php73 | 升级 PHP 7.3 |
--php74 | 升级 PHP 7.4 |
--mysql | 升级 MariaDB |
--wpcli | 升级 WPCLI |
--redis | 升级 Redis |
--netdata | 升级 Netdata |
--dashboard | 升级 WordOps 仪表板 |
--composer | 升级 Composer |
--phpmyadmin | 升级 phpMyAdmin |
--adminer | 升级 Adminer |
--no-prompt | 无需任何提示直接升级套件 |
--force | 强制升级套件不显示任何提示 |
wo stack upgrade
以上指令会新增套件储存库,并升级套件且针对主套件,从目前 WordOps 版本中包含的配置模版来更新及最佳化配置 ( 尤其是针对 MariaDB 和 Redis )
使用以下指令,只会从目前的 MariaDB 储存库更新套件,而不会在主要版本 ( 10.1 -> 10.3 ) 之间升级。
wo stack upgrade
要升级 MariaDB,请使用以下指令
wo stack migrate --mariadb
WordOps 套件删除
用法 ( 不删除 APT 套件包的配置或资料 )
wo stack remove <stack> [options]
options | 描述 |
---|---|
--all | 删除所有套件 |
--force | 强制删除不提示 |
详细 WordOps stacks 指令,请阅读官方 WordOps stacks 说明
一键快速安装 WordPress
官方提供了多种 WordPress 架构安装方式,透过以下指令即可快速完成安装
WordPress site
wo site create site.tld --wp
以下指令为进阶 WordPress 安装,对 WordPress 有一定程度的了解再进行
WordPress site + Nginx fastcgi_cache
wo site create site.tld --wpfc
WordPress site + Redis cache
wo site create site.tld --wpredis
WordPress site + WP-Super-cache
wo site create site.tld --wpsc
WordPress site + WP-Rocket cache
wo site create site.tld --wprocket
WordPress site + Cache enabler
wo site create site.tld --wpce
Enable Ultimate Nginx bad blocker on new site
wo site create site.tld --ngxblocker
site.tld 改成你的域名,DNS 要指向服务器主机 IP 才能从域名名称解析到主机
附加功能
WordOps 支持 Let’s Encrypt SSL 凭证加密
利用以下指令在一键安装 WordPress 时也可一同向 Let’s Encrypt 申请证书
wo site create site.tld --wp --letsencrypt
site.tld 改成你的域名
通配符域名证书
可以透过此方式申请主域名 + 子域名通配符证书 ( 通配符证书 WiKi )
可以透过 Cloudflare DNS 来向 Let’s Encrypt 申请凭证,Cloudflare DNS 申请及 DNS 设置在此不详述
照以下步骤执行
- 取得 Cloudflare API Key
- 使用 acme.sh 变量设置凭证
在使用 DNS API 发行第一个 SSL 凭证之前,必须使用以下指令
export CF_Key="Cloudflare Global API Key" export CF_Email="Cloudflare 的帳戶 Email"
设置好后使用以下指令建立通配符证书
wo site create site.tld --wp --letsencrypt=wildcard --dns=dns_cf
site.tld 改成你的域名
维护
使用以下指令可以立即更新 apt-cache 并升级套件
wo maintenance
WordOps 版本更新
使用以下指令将 WordOps 更新到可用的最新版本
wo update
结尾
WordOps 虽然好用,但还是有遇到过在更新上发生一些问题,所以记得在已经正式上线的服务器上如果要作任何更新以及删除的动作前,请先利用主机的快照备份一下副本以防万一。
发表回复