万界道友
cd /www/wwwroot/daoyou && bun run build && systemctl restart daoyou
重建
查看实时日志
journalctl -u daoyou -f
搭建过程
万界道友(Daoyou)宝塔面板部署全流程
一、环境准备(宝塔面板操作)
1.1 安装 Bun 运行时
curl -fsSL https://bun.sh/install | bash
exec /bin/bash
bun -v
1.2 安装 PostgreSQL(宝塔 → 软件商店 → PostgreSQL)
创建数据库 daoyou
创建用户 daoyou,密码自定
1.3 安装 Redis(宝塔 → 软件商店 → Redis)
保持默认配置 6379 端口即可
1.4 安装 Nginx(宝塔 → 软件商店 → Nginx)
用于反向代理
二、上传项目
先在宝塔创建网站目录
mkdir -p /www/wwwroot/daoyou
本地执行,上传全部源码
scp -r d:/kf/Daoyou-master/Daoyou-master/* root@45.192.107.13:/www/wwwroot/daoyou/
三、配置环境变量
编辑 /www/wwwroot/daoyou/.env.production:
PORT=3000
===== AI(DeepSeek)=====
PROVIDER_CHOOSE=deepseek
DEEPSEEK_API_KEY=sk-你的key
DEEPSEEK_BASE_URL=https://api.deepseek.com
DEEPSEEK_MODEL_USE=deepseek-chat # ⚠️ 不要填 deepseek-v4-flash!
DEEPSEEK_MODEL_FAST_USE=deepseek-chat
===== 数据库 =====
DATABASE_URL=postgresql://daoyou:你的密码@127.0.0.1:5432/daoyou
===== Redis =====
REDIS_URL=redis://127.0.0.1:6379/0
===== Better Auth =====
BETTER_AUTH_SECRET=你的密钥
BETTER_AUTH_URL=http://你的服务器IP
BETTER_AUTH_DB_SCHEMA=better_auth # ⚠️ 不要填 public!
===== 定时任务 =====
CRON_SECRET=你的定时任务密钥
===== 邮件 =====
SMTP_HOST=smtp.qq.com
SMTP_PORT=465
SMTP_SECURE=true
SMTP_USER=你的QQ@qq.com
SMTP_PASS=QQ邮箱授权码 # ⚠️ 是授权码,不是QQ密码!
MAIL_FROM=”万界道友 <你的QQ@qq.com>”
===== 管理员 =====
ADMIN_EMAILS=你的邮箱@qq.com
四、安装依赖 & 构建
cd /www/wwwroot/daoyou
bun install
bun run build
五、数据库初始化
应用业务表
bunx drizzle-kit migrate
初始化 Auth 表
bun run auth:migrate
六、配置 Nginx 反向代理
宝塔 → 网站 → 对应站点 → 配置文件,替换为:
nginx
server {
listen 80;
server_name 你的IP或域名;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
access_log /www/wwwlogs/daoyou.log;
error_log /www/wwwlogs/daoyou.error.log;
}
验证并重载
nginx -t && nginx -s reload
七、配置 Systemd 服务(保活)
创建 /etc/systemd/system/daoyou.service:
[Unit]
Description=Daoyou Hono App
After=network.target postgresql.service redis.service
[Service]
Type=simple
User=root
WorkingDirectory=/www/wwwroot/daoyou
ExecStart=/root/.bun/bin/bun run dist/index.js
Restart=always
RestartSec=5
Environment=NODE_ENV=production
[Install]
WantedBy=multi-user.target
启动服务:
systemctl daemon-reload
systemctl enable daoyou
systemctl start daoyou
八、验证
检查服务状态
systemctl status daoyou
健康检查
curl http://127.0.0.1:3000/api/health-check
实时日志
journalctl -u daoyou -f –no-pager
九、日常更新流程
cd /www/wwwroot/daoyou && bun run build && systemctl restart daoyou

使用方式
上传到服务器后构建部署
进入 /admin/qq-login 页面配置 AppID、AppKey、回调地址
回调地址格式:https://你的域名/api/qq-auth/callback
启用后在登录/注册页即可看到 QQ 登录入口
绝对重构
cd /www/wwwroot/daoyou
bun install
bun run vite build –mode client && bun run vite build && systemctl restart daoyou
第一步 — 删除锁文件和缓存重装:
cd /www/wwwroot/daoyou && rm -rf node_modules bun.lock && bun install
第二步 — 直接试客户端构建,确认不是 bun 脚本缓存问题:
cd /www/wwwroot/daoyou && bun vite build –config vite.config.client.ts
你每次还原备份都把构建配置覆盖了。别用 bun run build 了,直接执行:
cd /www/wwwroot/daoyou && bun vite build –config vite.config.client.ts && bun vite build && systemctl restart daoyou