Skip to content

快速开始

最新授权地址:http://139.155.246.228:3300

Token秘钥:注册账户后到个人中心获取

仓库地址: https://github.com/orangbus/go-movie

App下载地址:https://orangbus.lanzouw.com/b00y96oood 密码: juhe

安装

请提前安装好docker以及docker-compose

1、下载源码

bash
git clone https://github.com/orangbus/go-movie.git
cd go-movie

如果需要支持全文检索,请使用 docker-compose-scout.yml 配置文件,执行下面命令

bash
cd go-movie
cat docker-compose-scout.yml > docker-compose.yml && mkdir data

Tip: 在go-movie目录下,将docker-compose-scout.yml内容复制到docker-compose.yml 中,并且创建一个data的空目录

2、运行

bash
cd go-movie && docker-compose up -d

# 停止
docker-compose down

浏览器访问:http://<主机ip>:<映射的宿主机端口保持一致,默认:3000>

text
http://127.0.0.1:3000

升级

bash
docker pull registry.cn-hangzhou.aliyuncs.com/orangbus/m3u8-downloader
# or
docker-compose pull

重新启动即可

bash
docker-compose down && docker-compose up -d

配置文件说明

env

env
APP_KEY=s2yRWGQ3SKWEEM67pgwr5KvYSEyT5DUP # 默认即可
APP_URL=http://0.0.0.0:3000  # 默认即可
APP_WEB=true # 开启网页访问:true|false
APP_DOWNLOAD=true # 开启下载:true|false
APP_TOKEN=123456 # 如果不想公开页面给其他人,可以设置一个密码
WEB_URL=http://127.0.0.1:3000 # 真实主机地址+端口号
PROXY_URL=https://spider.orangbus.cn # 代理地址

CLOUD_URL=http://139.155.246.228:3300 # 授权地址
CLOUD_TOKEN= # 打开授权地址注册一个账号后,到个人中心获取,不填写也可以

# meilisearch 全文检索
SCOUT_DRIVER=meilisearch # 保持默认
SCOUT_HOST=http://127.0.0.1:7700 # meilisearch安装的地址
SCOUT_KEY= # meilisearch 访问秘钥
SCOUT_INDEX=movies # 索引名称

配置文件修改需要重启

  • WEB_URL:假如我们部署在一个nas设备上面,ip地址就不是127.0.0.1,而是你nas设备的ip地址,比如说:http://192.168.1.20:3000
  • PROXY_URL: 有些网站可能都需要外网环境才能访问,可以配置一个代理地址,如果需要使用自己的域名,请参考下面的部署方式

docker-compose.yml

yaml
services:
  app:
    image: registry.cn-hangzhou.aliyuncs.com/orangbus/m3u8-downloader
    container_name: m3u8-downloader
    privileged: true
    restart: always
    ports:
      - "3000:3000" # 访问端口 <宿主机:项目端口>
    volumes:
      - ./.env:/www/.env # 配置文件
      - ./db.sqlite:/www/db.sqlite # 本地数据库,这是一个文件,不是一个目录
      - ./download:/www/download # 文件默认下载路径,最好:chmod -R 777 ./downlaod

端口说明:3000:3000 前面的3000:宿主机访问的端口,可以修改,后面的3000程序运行的端口,不建议修改

手机端配置

1、下载手机App安装

2、第一次进入App后需要一个设备信息(上面部署的程序)

  • 名称:能区分就可以,因为你可能在多个设备上面部署
  • 地址:假如我部署到Nas设备,nas的ip:3000 => https://192.168.1.3:3000
  • Token: .env 配置文件中的APP_TOKEN

代理部署方式

前提条件:

  • 需要一个域名

  • 需要一个cloudflare 账号,并且域名托管在cloudfile上面

1、找到 Workers和Pages 选项,创建一个应用程序

将下面的代码复制到编辑框中,点击部署

js
addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
  try {
      const url = new URL(request.url);
      // 获取请求参数中的 url 并进行解码
      // const param_url = decodeURIComponent(url.searchParams.get('url'));
      const param_url = url.search.replace("?url=","");

      // 检查是否提供了有效的代理 URL
      if (!param_url) {
          return new Response('Missing "url" parameter', { status: 400 });
      }

      // 创建一个新的请求对象,使用传入的 URL
      const modifiedRequest = new Request(param_url, {
          headers: request.headers,
          method: request.method,
          body: request.body,
          redirect: 'follow'
      });

      // 发起代理请求
      const response = await fetch(modifiedRequest);

      // 创建一个新的响应对象,复制原响应的内容和状态
      const modifiedResponse = new Response(response.body, {
          status: response.status,
          statusText: response.statusText,
          headers: response.headers
      });

      // 添加允许跨域访问的响应头
      modifiedResponse.headers.set('Access-Control-Allow-Origin', '*');
      // 允许跨域请求携带的头部字段
      modifiedResponse.headers.set('Access-Control-Allow-Headers', '*');
      // 允许跨域请求的方法
      modifiedResponse.headers.set('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS');

      return modifiedResponse;
  } catch (error) {
      // 处理可能出现的错误
      console.error('An error occurred:', error);
      return new Response('An error occurred while processing the request', { status: 500 });
  }
}

之后添加一个自定义域就可以

视频教程

制作中...

帮助

如果你能找到任何加入我们的方式,请加入他。