如何在Visual Studio Code中让discord.py开发的Discord机器人24/7在线(非Heroku、MongoDB方案)
24/7 运行Discord.py机器人的替代方案(非Heroku/MongoDB)
一、自用VPS/云服务器
这是最稳定的长期运行方案,适配大多数机器人规模:
- 选基础款云服务器即可(比如阿里云ECS、腾讯云CVM、DigitalOcean Droplet),1核1G内存完全能支撑小型Discord机器人。
- 部署步骤:
- 用
scp或Git把机器人代码上传到服务器。 - 安装Python 3.x和依赖包(
pip install discord.py等)。 - 后台运行机器人:
- 用
screen:执行screen -S discord-bot创建会话,运行python3 bot.py后按Ctrl+A+D脱离会话,机器人会在后台持续运行;重新连接会话用screen -r discord-bot。 - 用
systemd(推荐,支持开机自启、崩溃自动重启):创建服务文件/etc/systemd/system/discord-bot.service,内容如下:[Unit] Description=Discord Bot Service After=network.target [Service] User=your_username WorkingDirectory=/path/to/your/bot/folder ExecStart=/usr/bin/python3 bot.py Restart=always RestartSec=5 [Install] WantedBy=multi-user.target - 执行
sudo systemctl daemon-reload、sudo systemctl enable discord-bot、sudo systemctl start discord-bot完成配置。
- 用
- 用
二、本地设备挂机(适合个人小型机器人)
用闲置设备长期开机运行,几乎零成本:
- 可选设备:旧笔记本、树莓派、迷你主机等,需保证设备网络稳定、供电可靠(树莓派可搭配UPS避免断电)。
- 运行方式:
- Windows:写批处理文件
start-bot.bat(内容为python bot.py),通过「任务计划程序」设置开机自动启动并隐藏窗口运行。 - Linux/macOS:用
nohup python3 bot.py &后台运行,或配置launchd(macOS)、cron(Linux)实现开机自启。
- Windows:写批处理文件
三、免费平台替代(适合测试或低负载机器人)
- Replit:把代码导入Replit项目,写一个简单的Flask/FastAPI路由用于接收外部唤醒请求,再用本地定时脚本发送HTTP请求触发Repl唤醒,避开免费版休眠限制。
- Render:提供免费后台服务额度,部署机器人后在控制台开启「Always On」选项,就能保持24/7在线,适配小流量机器人。
四、数据库替代方案(替代MongoDB)
如果机器人需要存储数据,可选择:
- SQLite:轻量级文件型数据库,无需额外服务,直接用Python内置的
sqlite3模块操作,适合数据量不大的场景。 - PostgreSQL/MySQL:若需更强数据库功能,可在云服务器自行安装,或选云服务商的轻量数据库服务(比如阿里云RDS基础版),配置简单且成本低。
内容的提问来源于stack exchange,提问作者Game Programmer
相关产品推荐
相关产品推荐

