菜单
本页目录

Docker

MoviePilot在docker境像中同时还内置了虚拟显示浏览器仿真内建重启代理缓存等特性,推荐使用docker方式安装

docker-cli

docker run -itd \
    --name moviepilot \
    --hostname moviepilot \
    -p 3000:3000 \
    -v /media:/media \
    -v /moviepilot/config:/config \
    -v /moviepilot/core:/moviepilot/.cache/ms-playwright \
    -v /var/run/docker.sock:/var/run/docker.sock:ro \
    -e 'NGINX_PORT=3000' \
    -e 'PORT=3001' \
    -e 'PUID=0' \
    -e 'PGID=0' \
    -e 'UMASK=000' \
    -e 'TZ=Asia/Shanghai' \
    -e 'AUTH_SITE=iyuu' \
    -e 'IYUU_SIGN=xxxx' \
    -e 'SUPERUSER=admin' \
    -e 'API_TOKEN=moviepilot' \
    --restart always \
    jxxghp/moviepilot:latest

docker-compose

version: '3.3'

services:

    moviepilot:
        stdin_open: true
        tty: true
        container_name: moviepilot
        hostname: moviepilot
        networks:
            - moviepilot
        ports:
            - target: 3000
              published: 3000
              protocol: tcp
        volumes:
            - '/media:/media'
            - '/moviepilot/config:/config'
            - '/moviepilot/core:/moviepilot/.cache/ms-playwright'
            - '/var/run/docker.sock:/var/run/docker.sock:ro'
        environment:
            - 'NGINX_PORT=3000'
            - 'PORT=3001'
            - 'PUID=0'
            - 'PGID=0'
            - 'UMASK=000'
            - 'TZ=Asia/Shanghai'
            - 'AUTH_SITE=iyuu'
            - 'IYUU_SIGN=xxxx'
            - 'SUPERUSER=admin'
            - 'API_TOKEN=moviepilot'
        restart: always
        image: jxxghp/moviepilot:latest

networks:
  moviepilot:
    name: moviepilot

相关说明:

  • /media为媒体文件目录,根据实际情况调整,需要注意的是,如果你计划使用硬链接来整理文件,那么文件下载目录和整理后的媒体库目录只能映射一个根目录不能分开映射,否则将会导致跨盘无法硬链接。 这是由docker的目录映射机制决定的,下面这些情况都会导致跨盘无法硬链接:
    1. 下载目录和媒体库目录分别属于两个不同的磁盘
    2. 下载目录和媒体库目录属于同一磁盘,但在两个不同的分区/存储空间/存储池中
    3. 下载目录和媒体库目录分别作为两个目录路径映射到docker容器中
  • /moviepilot/config为配置文件、数据库文件、日志文件、缓存文件使用的文件目录,该目录将会存储所有设置和数据,需根据实际情况调整。
  • /moviepilot/core为浏览器内核下载保存目录(避免容器重置后重新下载浏览器内核),需根据实际情况调整。
  • /var/run/docker.sock用于内建重启时使用,建议映射。
  • 默认使用3000为WEB服务端口,3001为Api服务端口,可根据实际情况调整。
  • AUTH_SITESUPERUSERAPI_TOKEN等其它变量请根据 配置参考 说明调整和补充,上述为最基础配置,实际可以根据需要补充其它变量。

Windows

Windows环境下提供两种安装方式,推荐使用安装版本

可执行文件版本

项目在编译时,将Python以及相关的代码打包到一个exe文件中使用,点击 此处 下载exe文件,双击运行后会自动生成config配置文件目录,以及nginx前端资源目录,正常运行后会操作系统任务栏会生成MoviePilot图标,输入localhost:3000可访问后端管理WEB。

  • 如运行后无法正常解压,请使用管理员权限运行。
  • 如被杀毒软拦截,则需要将运行目录加入白名单放行,因打包方式的原因有的杀毒软件会识判为病毒。
  • 还需根据 配置参考 ,在 Windows 系统属性 -> 高级设置 -> 环境变量中添加认证等环境变量。
  • 由于该版本是预编译后再打包的方式,在功能上存在一定的限制,比如不支持内建重启、除内置插件库外不支持安装其它第三方插件库插件等。

安装版本

Windows-MoviePilot 项目提供,参考项目说明使用。

Synology套件

DSM7 添加套件源:https://spk7.imnks.com/ ,安装后通过MoviePilot配置入口,根据 配置参考 进行配置使用。

该套件由套件源作者维护,如有问题需要向套件源维护方寻求帮助。

源代码运行

MoviePilot项目已拆分为多个项目,使用源码运行时需要手动将相关项目文件进行整合:

  1. 使用git clone或者下载源代码包的方式下载主项目 MoviePilot 文件到本地。
git clone https://github.com/jxxghp/MoviePilot
  1. 将工程 MoviePilot-Plugins plugins目录下的所有文件复制到app/plugins目录,icons目录下的所有文件复制到前端项目的public/plugin_icon目录下
  2. 将工程 MoviePilot-Resources resources目录下的所有文件复制到app/helper目录
  3. 执行命令:pip install -r requirements.txt 安装依赖
  4. 执行命令:PYTHONPATH=. python app/main.py 启动主服务
  5. 据前端项目 MoviePilot-Frontend 说明,启动前端服务

反向代理

如需开启域名访问MoviePilot,则需要搭建反向代理服务。以nginx为例,需要添加以下配置项,否则可能会导致部分功能无法访问(ip:port修改为实际值):

location / {
    proxy_pass http://ip:port;
    proxy_set_header Host $http_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;
}

反向代理使用SSL时,还需要开启http2,否则会导致日志加载时间过长或不可用:

server {
    listen 443 ssl;
    http2 on;
    # ...
}

代理服务连接超时时间应尽量长⼀些,比如10分钟,避免代理服务器强制中断请求。