惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
人人都是产品经理
人人都是产品经理
Cisco Talos Blog
Cisco Talos Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
V
V2EX
博客园 - 三生石上(FineUI控件)
Martin Fowler
Martin Fowler
WordPress大学
WordPress大学
D
Docker
S
SegmentFault 最新的问题
博客园 - 聂微东
美团技术团队
Apple Machine Learning Research
Apple Machine Learning Research
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Last Week in AI
Last Week in AI
M
MIT News - Artificial intelligence
F
Fortinet All Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
The GitHub Blog
The GitHub Blog
GbyAI
GbyAI
L
LangChain Blog
Vercel News
Vercel News
博客园 - 叶小钗
MongoDB | Blog
MongoDB | Blog
Stack Overflow Blog
Stack Overflow Blog
H
Help Net Security
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Cloudflare Blog
Engineering at Meta
Engineering at Meta
T
Threat Research - Cisco Blogs
T
Threatpost
Scott Helme
Scott Helme
T
Tailwind CSS Blog
Latest news
Latest news
Stack Overflow Blog
Stack Overflow Blog
Blog — PlanetScale
Blog — PlanetScale
The Register - Security
The Register - Security
罗磊的独立博客
P
Proofpoint News Feed
腾讯CDC
S
Schneier on Security
雷峰网
雷峰网
A
About on SuperTechFans
T
Tenable Blog
F
Full Disclosure
Cyberwarzone
Cyberwarzone
博客园_首页
有赞技术团队
有赞技术团队
K
Kaspersky official blog

文章列表

Astro框架Fuwari主题侧边栏添加Umami访问统计 为Fuwari框架适配友链状态显示 免费领取网易云音乐7天会员 小米MiMo Token Plan免费送辣! Astro框架Fuwari主题实现仿hexo-abbrlink功能 观《鬼灭之刃:无限城篇 第一章 猗窝座再袭》首映有感 为你anzhiyu主题的Twikoo评论系统恢复预览按钮 山东泰安泰山游记:煌煌泰山景,谦谦君子风 安知鱼主题:修复背景图修改引发的深色模式可读性问题 安知鱼主题实现友链状态前端显示 我敲!优选DNS牛大了 安知鱼主题侧边栏添加无聊湾 从零开始使用Hexo框架搭建属于你的博客(一)环境准备篇 记录下Hexo博客从本地构建迁移到Netlify,AI API Key 泄露问题与解决方案记录 手把手教你在Linux系统下部署MCSManager并搭建一个MC服务器 为你的Twikoo添加酷安表情包 记录一次博客评论迁移过程
云服务器宝塔部署Twikoo博客评论系统
辰渊尘 · 2025-09-07 · via

前言#

时间是真快啊,转眼就开学一周了,之所以想从免费的 Netlify + MongoDB Atlas 转到付费的云服务器主要有两点。

  1. 看到有人被 MongoDB Atlas 的免费机制坑了的(一段时间数据库无交互自动注销)
  2. 这个方案评论延迟有点高,慢的一批,有时候信号不好发个评论转半分钟,很搞人心态。

需要的东西#

  • 一台云服务器
  • 一个域名
  • Cloudflare 账户

准备工作#

云服务器#

这边依旧使用 雨云 的云服务器作为例子,我选择了 香港四区 带宽更大,延迟也能接受

香港四区

套餐直接一步到位 2c4g 50M 对等,性价比很高,以后扩展业务也够用了,一个月 50 不到,新用户首次还有优惠券只要 20 出头就能拿下

套餐

系统这边选择 Debian + 宝塔组合,开箱即用。

接下来付款,然后坐和放宽,等待服务器启动

配置宝塔#

显示运行中进入管理面板,直接点击上方的 宝塔管理面板 (我一开始没发现,傻傻去后台重新修改了端口和用户名密码,不过入口推荐改一下,雨云默认 https://<ip>:8889/rainy 个人觉得有点危险)

配置后端和数据库#

我不太喜欢宝塔的 docker 配置界面,所以是直接 ssh 的

$ ssh root@1.1.1.1

root@1.1.1.1's password:

Linux RainYun-S5CxTACA 6.1.0-27-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.115-1 (2024-11-01) x86_64

The programs included with the Debian GNU/Linux system are free software;

the exact distribution terms for each program are described in the

individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent

permitted by applicable law.

Last login: Sun Sep 7 14:42:17 2025 from 2.2.2.2

root@RainYun-S5CxTACA:~# cd /www/wwwroot

root@RainYun-S5CxTACA:/www/wwwroot# mkdir twikoo

root@RainYun-S5CxTACA:/www/wwwroot# cd twikoo

root@RainYun-S5CxTACA:/www/wwwroot/twikoo# vim docker-compose.yml

创建文件和文件夹,路径: /www/wwwroot/twikoo/docker-compose.yml

version: "3"

services:

mongodb:

image: mongo:latest

container_name: twikoo-mongo

restart: always

environment:

MONGO_INITDB_ROOT_USERNAME: twikoo

MONGO_INITDB_ROOT_PASSWORD: <随机生成一个16位字符串确保安全>

MONGO_INITDB_DATABASE: twikoo

ports:

- "27017:27017"

volumes:

- ./mongo-data:/data/db # 挂载到宿主机 ./mongo-data

twikoo:

image: imaegoo/twikoo

container_name: twikoo

restart: always

ports:

- 8080:8080

environment:

TWIKOO_THROTTLE: 1000

MONGODB_URI: "mongodb://twikoo:<随机生成一个16位字符串确保安全>@mongodb:27017/twikoo?authSource=admin&retryWrites=true&w=majority"

TWIKOO_IP_HEADERS: '["headers.cf-connecting-ip"]'

depends_on:

- mongodb

volumes:

- ./data:/app/data

然后部署 docker 容器

docker-compose up -d

设置反代#

宝塔 -> 网站 -> 反向代理 -> 添加反代

像我这么填

域名:填写一个好记的,例如 twikoo.mcxiaochen.top

目标:http://127.0.0.1:8080

发送域名 (host): $http_host 这个一般不用动

配置 DNS#

推荐 Cloudflare 托管域名,小橙云保护服务器

配置 SSL#

回到宝塔面板,戳反代右边的 配置 SSL ,然后随手申请一个 Let’s Encrypt 的免费证书就行,宝塔会自动续签的

检查#

访问域名,如果返回

{

"code": 100,

"message": "Twikoo 云函数运行正常,请参考 https://twikoo.js.org/frontend.html 完成前端的配置",

"version": "1.6.44"

}

则代表功能正常,可以去前端配置了。

迁移数据#

非常简单,我使用 Navicat16 同时链接 MongoDB Atlas 和自建的数据库,复制粘贴就完事了

参考资料(排名不分先后)#