MoviePilot开发环境完整搭建指南:从源码编译到调试运行

【免费下载链接】MoviePilot NAS媒体库自动化管理工具 【免费下载链接】MoviePilot 项目地址: https://gitcode.com/gh_mirrors/mo/MoviePilot

想要深入定制和扩展MoviePilot这款强大的NAS媒体库自动化管理工具吗?本教程将带你完成从源码获取到环境配置的完整流程,让你能够自由开发和调试这个开源项目。MoviePilot是一个基于FastAPI + Vue3的现代化媒体管理解决方案,专注于自动化核心需求,简化功能设置,提供美观易用的用户界面。

🛠️ 环境准备与依赖安装

系统要求检查

在开始MoviePilot开发环境搭建之前,请确保您的系统满足以下要求:

  • Python 3.12 或更高版本(兼容3.11)
  • Node.js v20.12.1(用于前端开发)
  • Git 版本控制工具
  • pip Python包管理器

源码获取

首先克隆项目仓库到本地:

git clone https://gitcode.com/gh_mirrors/mo/MoviePilot
cd MoviePilot

虚拟环境配置

创建独立的Python虚拟环境是开发的最佳实践:

# Windows系统
python -m venv venv
.\venv\Scripts\activate

# macOS/Linux系统  
python3 -m venv venv
source venv/bin/activate

依赖项管理

MoviePilot使用pip-tools进行依赖管理,确保环境一致性:

pip install pip-tools
pip-compile requirements.in
pip install -r requirements.txt

📦 数据库配置选项

MoviePilot支持两种数据库类型,你可以根据需求选择:

SQLite配置(默认)

config/app.env中设置:

DB_TYPE=sqlite

PostgreSQL配置

对于生产环境或需要更高性能的场景:

DB_TYPE=postgresql
DB_POSTGRESQL_HOST=localhost
DB_POSTGRESQL_PORT=5432
DB_POSTGRESQL_DATABASE=moviepilot
DB_POSTGRESQL_USERNAME=moviepilot
DB_POSTGRESQL_PASSWORD=moviepilot

🚀 后端服务启动

初始化数据库

在启动服务前需要初始化数据库结构:

python -m app.main

这将自动创建所有必要的数据库表,默认监听端口为3001,API文档地址为http://localhost:3001/docs

MoviePilot应用图标

🎯 前端环境配置

获取前端代码

MoviePilot采用前后端分离架构,需要单独配置前端:

git clone https://github.com/jxxghp/MoviePilot-Frontend
cd MoviePilot-Frontend

安装依赖与启动

yarn
yarn dev

前端服务启动后,可以通过http://localhost:5173访问应用界面。

🔧 开发工具与调试技巧

安全扫描

在每次依赖更新后运行安全检查:

safety check -r requirements.txt --policy-file=safety.policy.yml

代码编译优化

项目使用Cython进行性能优化,相关配置在setup.py中定义。

💡 常见问题解决

数据库迁移问题

从SQLite迁移到PostgreSQL时,需要注意序列重置:

ALTER SEQUENCE workflow_id_seq RESTART WITH {max_id + 1};

依赖冲突处理

如果遇到依赖版本冲突,可以手动更新特定包:

pip-compile --upgrade-package requests requirements.in

🎉 环境验证

完成所有配置后,通过以下步骤验证环境:

  1. 后端API服务正常启动
  2. 前端界面能够正常访问
  3. 数据库连接和操作无异常
  4. 核心功能模块加载成功

📚 进阶开发资源

  • API文档http://localhost:3001/docs
  • 插件开发:在app/plugins/目录下扩展功能
  • 模块定制:参考app/modules/中的实现

通过本指南,你现在应该已经成功搭建了MoviePilot的完整开发环境,可以开始自由定制和扩展这个强大的媒体库自动化管理工具了!

【免费下载链接】MoviePilot NAS媒体库自动化管理工具 【免费下载链接】MoviePilot 项目地址: https://gitcode.com/gh_mirrors/mo/MoviePilot

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐