Jellyseerr项目从源码构建指南:高级安装与部署方案

Jellyseerr项目从源码构建指南:高级安装与部署方案

jellyseerr Fork of overseerr for jellyfin support jellyseerr 项目地址: https://gitcode.com/gh_mirrors/je/jellyseerr

前言

Jellyseerr是一款优秀的媒体请求管理工具,本文将为技术爱好者详细介绍如何从源码构建并部署Jellyseerr。相比直接使用预编译版本,从源码构建能让你获得最新功能,并拥有更高的自定义灵活性。

准备工作

在开始构建前,请确保系统满足以下要求:

  1. Node.js环境:需要22.x版本,建议使用LTS版本
  2. 包管理工具:推荐使用pnpm 9.x版本,相比npm/yarn有更好的性能
  3. Git工具:用于获取最新源代码
  4. 构建工具链:根据操作系统可能需要额外工具

Unix系统构建指南(Linux/macOS)

基础安装步骤

  1. 创建工作目录

    sudo mkdir -p /opt/jellyseerr && cd /opt/jellyseerr
    
  2. 获取源代码

    git clone https://github.com/Fallenbagel/jellyseerr.git
    cd jellyseerr
    git checkout main
    
  3. 安装依赖

    CYPRESS_INSTALL_BINARY=0 pnpm install --frozen-lockfile
    

    注:禁用Cypress安装可加快构建速度

  4. 构建项目

    pnpm build
    
  5. 启动服务

    pnpm start
    

构建完成后,可通过浏览器访问http://localhost:5055使用Jellyseerr。

高级部署方案

Linux系统服务化部署
  1. 创建环境配置文件

    mkdir -p /etc/jellyseerr
    echo "PORT=5055" > /etc/jellyseerr/jellyseerr.conf
    
  2. 创建systemd服务文件

    [Unit]
    Description=Jellyseerr Service
    Wants=network-online.target
    After=network-online.target
    
    [Service]
    EnvironmentFile=/etc/jellyseerr/jellyseerr.conf
    Environment=NODE_ENV=production
    Type=exec
    Restart=on-failure
    WorkingDirectory=/opt/jellyseerr
    ExecStart=/usr/bin/node dist/index.js
    
    [Install]
    WantedBy=multi-user.target
    
  3. 启用并启动服务

    sudo systemctl enable jellyseerr
    sudo systemctl start jellyseerr
    
macOS系统服务化部署
  1. 创建launchd plist文件

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
      <key>Label</key>
      <string>com.jellyseerr</string>
      <key>ProgramArguments</key>
      <array>
        <string>/usr/local/bin/node</string>
        <string>/opt/jellyseerr/dist/index.js</string>
      </array>
      <key>WorkingDirectory</key>
      <string>/opt/jellyseerr</string>
      <key>EnvironmentVariables</key>
      <dict>
        <key>NODE_ENV</key>
        <string>production</string>
        <key>PORT</key>
        <string>5055</string>
      </dict>
      <key>RunAtLoad</key>
      <true/>
      <key>KeepAlive</key>
      <true/>
    </dict>
    </plist>
    
  2. 加载并启动服务

    sudo launchctl load ~/Library/LaunchAgents/com.jellyseerr.plist
    sudo launchctl start com.jellyseerr
    

Windows系统构建指南

基础安装步骤

  1. 创建工作目录

    mkdir C:\jellyseerr
    cd C:\jellyseerr
    
  2. 获取源代码

    git clone https://github.com/Fallenbagel/jellyseerr.git .
    git checkout main
    
  3. 安装依赖

    npm install -g win-node-env
    set CYPRESS_INSTALL_BINARY=0 && pnpm install --frozen-lockfile
    
  4. 构建项目

    pnpm build
    
  5. 启动服务

    pnpm start
    

高级部署方案

使用NSSM创建Windows服务
  1. 安装NSSM

    nssm install Jellyseerr "C:\Program Files\nodejs\node.exe" "C:\jellyseerr\dist\index.js"
    
  2. 配置服务参数

    nssm set Jellyseerr AppDirectory "C:\jellyseerr"
    nssm set Jellyseerr AppEnvironmentExtra NODE_ENV=production
    
  3. 启动服务

    nssm start Jellyseerr
    

项目更新与维护

当需要更新Jellyseerr版本时,执行以下操作:

cd /opt/jellyseerr
git pull
pnpm install
pnpm build

然后根据部署方式重启服务即可。

常见问题解决

  1. 构建失败:检查Node.js和pnpm版本是否符合要求
  2. 服务无法启动:查看日志文件确认具体错误
  3. 端口冲突:修改环境配置文件中的PORT值
  4. 性能问题:考虑使用PM2等进程管理工具进行负载均衡

通过以上步骤,您已经成功从源码构建并部署了Jellyseerr服务。这种部署方式虽然复杂,但能提供更大的灵活性和控制权,适合需要定制化部署的高级用户。

jellyseerr Fork of overseerr for jellyfin support jellyseerr 项目地址: https://gitcode.com/gh_mirrors/je/jellyseerr

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

范靓好Udolf

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值