我们中的许多人都会遇到这样的时刻:每月的托管费用逐渐增加,限制开始减少,您想知道,“我可以自己运行这个吗?”好的——你绝对可以。本文将引导您冷静而彻底地迁移到自我管理的 VPS并部署WordPress和n8n(工作流程自动化)使用酷化,一个友好的开源平台,可让您在自己的服务器上一键部署。
我们将比通常的演示视频更深入。不仅仅是“点击这里”,而是为什么每一步都很重要,常见的地雷在哪里,以及如果出现问题该怎么办。我还将修复原始脚本中的几个名称混淆(如下所述),添加安全强化、备份策略和问答,以使其真正做好生产准备。

我们将提到的工具的官方非促销链接:
•酷化– 开源自托管 PaaS:https://coolify.io
•WordPress– 内容管理系统:https://wordpress.org
•n8n– 工作流程自动化:https://n8n.io
•乌班图–我们将使用的分布:https://ubuntu.com
•期限(SSH 客户端):https://termius.com
•油灰(SSH 客户端替代方案):https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
•开放SSH(内置于 macOS/Linux &/11):https://www.openssh.com
•让我们加密(免费 SSL/TLS):https://letscrypt.org
• DNS 注册商示例:戈达迪 https://www.godaddy.com和云耀 https://www.cloudflare.com
• VPS 提供商示例(选择适合您的):我会数 https://contabo.com,赫茨纳 https://www.hetzner.com,数字海洋 https://www.digitalocean.com,易诺德 https://www.linode.com,乌尔特尔 https://www.vultr.com
我们将构建什么(以及为什么值得)
您将提供一个虚拟专用服务器(虚拟专用服务器),保护它,安装酷化,然后部署WordPress(在您的域上)和n8n(在子域上)通过自动 HTTPS让我们加密。您最终将获得一个灵活、可编写脚本且易于升级的设置(通常成本只是堆叠托管计划的一小部分),同时学到足够的知识,让您感觉真正处于掌控之中。
关于您分享的文字记录中的姓名的快速注释:
- 被称为“Terus”的 SSH 客户端是期限。
- 名为“Koolifi/Coolifi/curify”的平台是酷化。
我们将在这里使用正确的名称,并在有帮助的情况下包含等效的替代名称。
吸一口气;我们会一步一步来。到目前为止,一切顺利——让我们开始计划吧。
1) 自我管理托管:适合您吗?
在我们接触终端之前,我们先进行一次快速的检查。运行您自己的 VPS 就像选择在家做饭一样。您可以挑选食材(Linux、应用程序)、调味(性能/安全),并省钱,但您还可以洗碗(更新/备份)。如果这种平衡让您兴奋,您一定会喜欢您所获得的控制力。
优点(人们为何更换):
- 成本效率与堆叠的“每个站点”托管计划相比,适用于多个站点/应用程序。
- 没有任意限制—根据需要启动 WordPress、n8n、API、数据库。
- 性能调优(RAM/CPU、缓存、PHP、图像处理)。
- 所有权和可移植性—您不会被锁定在面板的生态系统中。
缺点(真实的谈话):
- 你有责任用于安全更新、备份和恢复。
- 一些学习曲线-但我们会通过合理的默认值和清单来平滑这一点。
如果你也点头同意,那就太好了。让我们选择一个服务器。
2) 选择一个 VPS 并规划您的堆栈(推荐 Ubuntu LTS)
我们将使用Ubuntu 22.04 LTS(或更新的 LTS(如果可用)。它稳定、文档齐全且受到广泛支持。
选择提供商和计划
使用任何信誉良好的 VPS 提供商。提到的脚本我会数举个例子(https://contabo.com), 但赫茨纳,数字海洋,易诺德,乌尔特尔等等,都很好——比较vCPU、RAM、磁盘(首选 SSD/NVMe), 和数据中心区域靠近您的用户。
资源指导(起点):
- 小型 WordPress + n8n:2 个 vCPU / 4 GB RAM / 60–80 GB SSD
- 更多流量/多个站点:4 个 vCPU / 8 GB RAM / 120+ GB SSD
- 地区:最接近您的主要受众(较低的延迟)
订购服务器时:
- 操作系统:Ubuntu 长期支持(22.04 或 24.04 LTS)
- 设置一个强root密码 暂时地(我们很快就会切换到基于密钥的身份验证)。
- 请注意服务器IP当它被配置的那一刻。
手感不错:给服务器一个有意义的主机名(例如,atlas-01或者panel.example.com)。我们很快就会设置它。
到目前为止我们已经选好了厨房和食材。接下来:安全地解锁门 (SSH)。
3) 首次连接:SSH 密钥、用户和基本强化
这是大多数导游偷工减料的地方。我们不会。
3.1 安装或使用SSH客户端
- 视窗: 你已经有了开放SSH现在 (
ssh在 PowerShell 中)。或者安装期限(https://termius.com) 或者油灰如果您更喜欢 GUI。 - macOS/Linux:终端+
ssh内置。
3.2 生成 SSH 密钥(如果没有)
在本地计算机上打开终端并运行:
ssh-keygen -t ed25519 -C "yourname@yourmachine"
接受默认值(或选择路径)并设置密码(如果密钥被复制则增加保护)。
你的公钥将在~/.ssh/id_ed25519.pub。复制其内容。
3.3 以 root 身份登录(仅限第一次)
ssh [email protected]
输入提供商通过电子邮件发送给您的临时密码。
3.4 创建非 root sudo 用户并添加 SSH 密钥
adduser deploy
usermod -aG sudo deploy
mkdir -p /home/deploy/.ssh
nano /home/deploy/.ssh/authorized_keys粘贴你的公钥进入该文件,保存,然后:
chmod 700 /home/deploy/.ssh
chmod 600 /home/deploy/.ssh/authorized_keys
chown -R deploy:deploy /home/deploy/.ssh3.5 安全 SSH 并禁用 root/密码登录
打开 SSH 配置:
纳米 /etc/ssh/sshd_config
查找并设置:
允许根登录 否
密码验证 否
可以选择将端口从 22 更改为非标准端口(例如 2847),以减少机器人扫描(通过模糊实现安全性不是万能药,但它可以减少噪音):
端口 2847
重新启动 SSH:
systemctl 重新启动 ssh
在新的终端窗口中测试:
ssh -p 2847 部署@YOUR.SERVER.IP
如果您可以作为部署进行连接,则可以关闭根会话。
3.6 更新系统、设置主机名和(可选)交换
跑步:
sudo apt update && sudo apt -y upgrade
sudo hostnamectl set-hostname atlas-01 # change name as you like交换(对于小 RAM 虚拟机):
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
sudo swapon -a3.7 基本防火墙(UFW)和Fail2ban
sudo apt -y install ufw fail2ban
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 2847/tcp # your SSH port
sudo ufw enable
sudo systemctl enable --now fail2ban太好了——你的前门现在像成人的服务员一样锁着。让我们转向有趣的部分:运行应用程序的现代方式。
什么是酷化?
冷却(https://coolify.io)是一个开源、自托管的 PaaS:它安装 Docker、Traefik(反向代理),并提供网页用户界面只需点击几下即可部署应用程序(WordPress、n8n、数据库、API)—在您自己的 VPS 上。想象一下无需租金的“Heroku 式简单”。
4.1 使用官方one-liner安装Coolify
以您的身份登录deploy用户通过 SSH 并运行:curl -fsSL https://cdn.coollabs.io/coolify/install.sh -o install.sh
bash安装.sh
(如果您想先检查,请在浏览器中打开该 URL 来阅读脚本。)
安装程序通过 Docker 设置 Coolify 堆栈。完成后,会显示一个网址/端口用于仪表板(通常https://YOUR.SERVER.IP:8000最初,或者如果您将域指向它,它可以自动配置)。
4.2 首次登录及管理员账户
打开安装程序打印的仪表板 URL,创建管理员帐户并登录。稍后您可以将 Coolify 本身指向子域,例如panel.example.com从其设置(如果您不想记住端口,这很方便)。
如果您现在希望面板位于域下,请创建一个 DNS一个记录为了
panel.example.com → YOUR.SERVER.IP,然后将其设置为 Coolify 的 URL 并在设置中启用 SSL — Coolify 将自动为您获取 Let's Encrypt 证书。
稍稍喘口气——您的平台已准备就绪。接下来:域名和证书。
5) 指向您的域名(DNS A/AAAA 记录)和自动 SSL
我们将用戈达迪(https://www.godaddy.com)因为源文本提到了它,但是云耀或者任何 DNS 主机都以相同的方式工作。
5.1 创建A/AAAA记录
- 根域(
example.com) →一个记录→您服务器的 IPv4(例如,203.0.113.10) - 万维网(
www.example.com) →别名记录→example.com(或者它自己的A记录) - WordPress 网站:如果你要在根目录下运行(
https://example.com),以上就足够了。 - n8n子域**:**创建一个记录
n8n.example.com→ 你的服务器IP。 - 冷却面板(选修的):
panel.example.com→ 服务器IP。 - 如果您的提供商为您提供IPv6,还创建AAAA记录。
TTL可以保留默认值;现代 DNS 传播速度很快(但最多允许一个小时)。
5.2 通过 Let's Encrypt 的 SSL/TLS(Coolify 中自动)
在每个应用程序的部署设置(WordPress、n8n 或面板本身)中,启用 HTTPS。 Coolify 与 Let's Encrypt 集成,因此只要您的 DNS 指向正确并且端口正确,它就会为您请求和续订证书80/443是可达的。
如果 SSL 颁发失败,请仔细检查您的 DNS 是否正确,并且您的防火墙是否允许 80/443(我们之前已打开)。
一切都指向了?完美的。让我们部署一些真实的东西。
6) 一键:部署具有持久存储的 WordPress
我们将从 WordPress 开始(https://wordpress.org)因为它很熟悉,并且它显示了您将在其他应用程序中重用的模式。
6.1 创建项目并添加WordPress
- 在 Coolify 中,单击创建项目(例如,“我的网站”)。
- 添加资源→ 搜索WordPress→ 选择官方一键模板。
Coolify 将预填充合理的默认设置:WordPress 容器、数据库(通常是 MariaDB)和反向代理路由。
6.2 设置您的域名和 SSL
- 在 WordPress 应用程序设置中,设置领域到
https://example.com(或者www.example.com如果这是您的偏好)。 - 打钩启用 SSL。 Coolify 将在部署时处理 Let's Encrypt 证书。
6.3 存储和环境变量(不要跳过)
- 确保 WordPress 容器已持久卷映射(Coolify 模板通常执行此操作)。这可以保证上传和插件在重新启动时的安全。
- 数据库凭证通常是自动生成的; Coolify 将通过环境变量将它们连接到 WordPress(例如,
WORDPRESS_DB_HOST,WORDPRESS_DB_USER,WORDPRESS_DB_PASSWORD)。您可以覆盖,但默认值就可以了。
6.4 部署
打部署。 Coolify 将提取映像、创建数据库、请求 SSL 并使堆栈联机。打开您的域名 — WordPress 的设置向导应该会迎接您。完成管理员用户创建,您就可以进入。
提示:为了提高性能,稍后考虑添加缓存插件(例如,WP Super Cache 或服务器端缓存)并将大型媒体卸载到对象存储。网站上线后,您可以将其作为第二阶段的调整。
到目前为止我们已经建立了一个CMS。让我们添加电动工具。
7)一键:在子域上部署n8n(有安全提示)
n8n(https://n8n.io)是一个强大的功能:构建自动化、连接 API、转换数据、安排作业。
7.1 添加n8n
- 添加资源→ 搜索n8n→ 选择一键模板。
- 放领域到
https://n8n.example.com并启用SSL协议。
7.2 安全访问
- 放N8N_BASIC_AUTH_ACTIVE=true和N8N_BASIC_AUTH_USER和N8N_BASIC_AUTH_PASSWORD(或使用 Coolify 的身份验证字段(如果提供)。这为您在应用程序前面提供了一个基本的 HTTP 身份验证层。
- 对于 webhook,定义WEBHOOK_URL匹配您的域名(
https://n8n.example.com/)。这可确保回调 URL 正确解析。
7.3 保存数据
- 确认卷已配置,以便流量和凭证持续存在(模板应映射
/home/node/.n8n)。 - 部署并登录。
实用提示:如果您要从外部服务调用 n8n webhook,请确保防火墙规则/Cloudflare 设置允许它们,并对您的 webhook URL 保密。考虑敏感端点的 IP 允许列表。
我们已经运行了两个真实的应用程序。现在让我们确保此设置长期保持平稳。
8) 备份、更新和扩展(无戏剧性)
一个小小的例行公事可以避免很多心痛。
8.1 备份(数据和配置)
- 数据库备份:使用 Coolify 的功能(如果可用)或通过数据库容器或主机内的 cron 安排转储。例如,每晚
mysqldump到一个/backups体积。 - 文件:WordPress 上传和 n8n 数据目录应该打开持久卷。将这些卷备份到远程存储(兼容 S3 的存储桶效果很好)。
- 快照:通过您的提供商定期对整个 VPS 进行快照(尤其是在重大升级之前)。
8.2 更新
- 系统:
sudo apt update && sudo apt -y upgrade每周一次(或启用无人值守升级)。 - 冷却:收到通知后从其仪表板进行更新。
- 容器:重新部署应用程序以提取更新的映像。在主要版本跳转之前检查变更日志。
8.3 监控
- 手表磁盘使用情况:日志和备份可以默默地填满磁盘(
df -h,docker system prune谨慎)。 - 追踪中央处理器/内存:如果交换量很大,请考虑增加 RAM 或将工作负载拆分到另一个 VPS 上。
8.4 缩放
- 最简单的方法是垂直缩放(增加计划资源)。
- 对于更大的车队,Coolify 可以管理多个服务器;或者将您的数据库分离到其自己的 VPS 上。
我们已经涵盖了生命周期。如果现在有些功能不起作用,下一部分可能会有所帮助。
9) 故障排除:DNS、SSL、端口和容器问题
有几个问题一再出现。这是一个快速分类。
域名无法解析?
- 验证一个记录指向正确的 IP(如果使用 IPv6,则指向 AAAA)。
- 检查传播(通常需要几分钟,偶尔约 1 小时)。
SSL 在部署日志中失败?
- 确保端口80/443已开放(
sudo ufw status)。 - 确认域名指向服务器前启用 SSL。
- 如果使用 Cloudflare,请确保代理设置匹配您的设置(首次发布时尝试“仅 DNS”)。
更改端口后无法进行 SSH 吗?
- 你有吗
sudo ufw allow NEWPORT/tcp? - 测试从新的终端窗口在关闭旧的之前。
应用程序出现“错误网关”或 502 错误?
- 打开应用程序日志在 Coolify 中查看容器错误。
- 验证环境变量(数据库主机、凭据),并且数据库容器是健康的。
- 重新部署。
磁盘已满(神秘的失败):
df -h和docker system df来评估。- 小心修剪旧图像/容器:
docker system prune(仔细阅读提示)。 - 将日志或备份存档移出根磁盘。
n8n webhook 没有触发?
- 确认WEBHOOK_URL和域/SSL 设置正确。
- 检查防火墙/Cloudflare 规则;某些主机会阻止异常端口或模式。
如果您遇到困难,请在 Coolify 中部署一个最小的测试应用程序(例如“hello world”)来确定问题是否存在DNS/SSL/代理与应用程序本身。
10) 常见问题解答:电子邮件、“无限制”、Windows 服务器等
Q1:我可以从该服务器发送“无限”电子邮件吗?
一个:当心。运行你的自己的 SMTP可靠地是不平凡的:设置PTR(反向 DNS)、SPF、DKIM、DMARC,管理 IP 信誉并处理退回邮件/反馈循环。许多 VPS IP 的声誉都很差。对于交易邮件,通常最好使用邮件枪,亚马逊SES,邮戳等,并将这些凭据连接到 WordPress/n8n。
Q2:我可以使用 Windows 服务器代替 Ubuntu 吗?
一个:你能, 但酷化大多数开发工具在 Linux 上是最友好的。除非你有充分的理由,否则坚持使用 Ubuntu LTS。
问题 3:我必须使用 GoDaddy 获取 DNS 吗?
一个:不需要。任何注册商/DNS 主机都可以。云耀提供快速 DNS 和附加功能(代理、WAF、规则)。一开始就保持简单;您可以在几分钟后迁移 DNS。
Q4:SSH 可以使用密码认证吗?
一个:使用SSH 密钥。我们在本指南中禁用密码登录是有原因的。密钥+密码更安全、更方便。
Q5:如何将现有的 WordPress 网站移至此处?
一个:最简单的方法:安装复印机或者多合一 WP 迁移在旧网站上安装插件,导出,然后在 WordPress 上线后在新网站上导入。当您准备好切换流量时更新 DNS。
Q6: 我可以将多个站点放在同一个 VPS 上吗?
一个:绝对地。 Coolify 处理许多应用程序和域。就看吧内存/CPU/磁盘,并添加交换净空高度。如果需要,可以分离高流量的数据库。
问题7:n8n 工作流程的备份怎么样?
一个:确保/home/node/.n8n卷位于持久存储上并包含在您的服务器外备份中。还定期导出关键工作流程。
问题 8:我的 SSL 续订将“正常工作”,对吧?
一个:是的-只要DNS 仍然指向您的服务器,并且端口 80/443 仍然可以访问。如果续订失败,Coolify 的日志会告诉您原因。
11) 安全和免责声明
自我管理的托管可以为您提供强大的功能并节省成本,但是你有责任对于服务器。其中包括:
- 正在申请安全更新定期(操作系统、Coolify、应用程序图像)
- 维护备份并测试恢复
- 下列的许可条款您运行的软件的
- 尊重反滥用和法律,特别是针对电子邮件和用户数据的法律
- 避免误导性的“无限”主张;带宽、CPU 和交付能力在实践中始终是有限的
如果您的工作负载变得至关重要,并且您希望专家来照顾堆栈,请考虑付费管理或专门的运营合作伙伴。在重要的时候委派操作并不可耻。
总结(以及下一步去哪里)
你已经:
- 保住了新鲜的乌班图具有基于密钥的 SSH、锁定防火墙和更新的 VPS。
- 已安装酷化,您的自托管应用程序控制面板。
- 尖域名系统并启用自动让我们加密证书。
- 已部署WordPress在您的域和n8n在子域中。
- 学会了如何备份,更新,监视器, 和规模——以及如何修复最常见的皱纹。
从这里,您可以添加更多内容:暂存 WordPress 站点、Postgres API、Redis 缓存或无头 CMS。模式保持不变,您的信心会随着每次部署而增强。
如果原始脚本的任何部分感觉不清楚(“Terus”/“Koolifi”命名、仅密码 SSH、跳过防火墙),我们已更正这些部分并提供更安全的替代方案。如果您有不同的 DNS 主机、CentOS 服务器,或者计划将多个区域置于 Cloudflare 后面 - 比如说,我会定制步骤。
标签
自我管理托管、vps 指南、coolify 教程、vps 上的 WordPress、n8n 自动化、ubuntu 服务器强化、让加密 ssl、dns 记录、服务器备份、docker 应用程序、反向代理、ufw 防火墙、ssh 密钥、初学者的 devops
标签
#SelfHosted #VPS #Coolify #WordPress #n8n #Ubuntu #LetsEncrypt #DevOps #Docker #Privacy #SRE
已访问 53 次,今天 1 次访问

