serv00_base 是一个为 serv00 免费主机设计的自动化部署工具。它可以帮助用户在 serv00 上快速部署 Node.js 应用程序,特别是针对视频下载项目 "videodown"。
- 一键式自动化部署流程,简化 serv00 上的应用程序安装
- 智能配置端口和域名绑定
- 集成 PM2 进程管理器,确保应用程序稳定运行
- 自动生成详细的部署信息页面(info.html)
- 自动配置重启任务,保证服务器重启后应用程序自动恢复运行
- 支持从 Git 仓库克隆项目(默认为 https://github.com/saotv/cobalt.git)
- 自动设置 Node.js 环境(默认版本为 20)
- 支持 pnpm 包管理器
- 自动设置 Python 虚拟环境
- 自动更新环境变量
- 拥有 serv00 免费主机账号
- 具备基本的命令行操作能力
- 确保服务器上已安装 Git
-
通过 SSH 连接到您的 serv00 服务器:
ssh 你的用户名@你的用户名.serv00.net
-
克隆仓库并运行安装脚本:
git clone https://github.com/aigem/free_video_download_serv00.git cd free_video_download_serv00 bash setup.sh main
-
按照提示完成配置过程,包括:
- 选择或添加端口
- 绑定网站域名
- 等待自动安装和配置过程完成
-
安装完成后,访问生成的 info.html 页面查看部署详情
安装过程会在 /usr/home/你的用户名/videodown/src/config.sh
生成一个配置文件,包含以下关键信息:
PROJECT_NAME
: 项目名称(默认为 "videodown")APP_PORT
: 应用程序运行的端口号MY_WEBSITE
: 绑定的域名GIT_REPO
: Git 仓库地址GIT_REPO_DIR
: Git 仓库目录名NODE_Version
: Node.js 版本(默认为 20)PYTHON_VIRTUALENV
: Python 虚拟环境路径- 其他相关配置信息
要部署您自己的应用:
- 修改
setup.sh
中的PROJECT_NAME
、GIT_REPO
和GIT_REPO_DIR
变量 - 确保您的应用程序使用配置文件中指定的端口号
- 如果需要,修改
prepare_application()
函数以适应您的应用程序需求 - 根据需要调整
src/package.txt
和src/requirements.txt
文件中的依赖项
本工具会自动设置一个重启脚本,确保服务器重启后您的应用能自动启动。重启脚本路径为: /usr/home/你的用户名/videodown/src/setup.sh main_reboot
- 安装日志:
/usr/home/你的用户名/videodown/setup_log.txt
- PM2 日志:
/usr/home/你的用户名/domains/你的域名/public_html/pm2_log.txt
- 应用无法启动:检查 PM2 日志
pm2 logs
- 端口冲突:确保您的应用监听的是配置文件中指定的端口
- 依赖问题:检查 Node.js 环境是否正确设置,可能需要手动运行
npm install
或pnpm install
- Python 虚拟环境问题:检查虚拟环境是否正确激活,可能需要手动运行
source /path/to/venv/bin/activate
- 请勿手动修改
reboot_run.sh
文件,它确保服务器重启后您的应用能自动启动 - 定期备份您的应用程序和数据
- 遵守 serv00 的使用条款和政策
- 如果修改了 Node.js 版本或 Python 虚拟环境,请确保更新相应的环境变量
- 自动更新环境变量:脚本会自动更新
.bash_profile
文件,确保所有必要的路径都被正确添加到环境变量中。 - 智能端口管理:脚本可以自动列出可用端口,并允许用户选择或添加新端口。
- 自动生成信息页面:安装完成后,会自动生成一个包含所有重要信息的
info.html
页面。 - 灵活的 Git 仓库支持:可以轻松更改 Git 仓库地址和目录名,以适应不同的项目需求。
欢迎贡献!如果您想为项目做出贡献,请遵循以下步骤:
- Fork 本仓库
- 创建您的特性分支 (
git checkout -b feature/AmazingFeature
) - 提交您的更改 (
git commit -m 'Add some AmazingFeature'
) - 推送到分支 (
git push origin feature/AmazingFeature
) - 开启一个 Pull Request
本项目采用 MIT 许可证。详情请见 LICENSE 文件。
如有任何问题或建议,请通过以下方式联系我们:
- 项目 Issues: https://github.com/你的用户名/serv00_base/issues
- 邮箱: [email protected]
感谢您使用 serv00_base!祝您在 serv00 上享受愉快的部署体验!