down2local下载中转程序

联合创作 · 2023-09-30 01:13

down2local是一个简单的下载中转程序,使用node.js开发,帮助你通过一个中间服务下载远程资源。

应用场景比如你在国内下载国外的软件包,可能网速慢或者根本连不上,此时可以通过此down2local中转下载,

而程序受益于node.js的stream功能,其本身不会在本地下载保存,而是通过管道直接返回数据,减少内存磁盘使用。

流程图如下:

down2local

以下为使用说明:

程序用node.js编写,请先安装node环境,建议版本10+,使用yarn包管理器,需要先安装yarn

手动部署

1. 下载源码

git clone https://github.com/staugur/down2local.git
cd down2local

2. 安装依赖

  • 2.1 dependencies

    yarn --prod
  • 2.2 pm2/forever(任选一种方式)

    • 2.2.1 pm2

      sudo yarn global add pm2 # or local install with `yarn add pm2`
    • 2.2.2 forever

      sudo yarn global add forever # or local install with `yarn add forever`

3. 启动服务

  • 3.1 pm2

    yarn pm2:[start/stop/restart/reload]
  • 3.2 forever

    yarn fe:[start/stop/restart]

App default listen on 127.0.0.1:5201, you can set it on config.json

Docker部署

  • 1. 自行构建镜像

    git clone https://github.com/staugur/down2local
    cd down2local
    docker build -t staugur/down2local .
    
  • 2. 使用自动构建的镜像(DockerHub)

    docker pull staugur/down2local
  • 3. 启动容器

    docker run -d --name down2local --net host --restart always down2local
    

使用Nginx反向代理

server {
    listen 80;
    server_name YOUR-DOMAIN-NAME;
    charset utf-8;
    location / {
       proxy_pass http://127.0.0.1:5201;
       proxy_set_header Host $host;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-Proto $scheme;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

使用方法

  1. 使用查询参数下载

    wget --content-disposition YOUR-DOMAIN-NAME/get?url=YOUR-DOWNLOAD-URL
    curl -O YOUR-DOMAIN-NAME/get?url=YOUR-DOWNLOAD-URL
  2. 使用路径下载(推荐

    wget YOUR-DOMAIN-NAME/get/YOUR-DOWNLOAD-URL
    curl -O YOUR-DOMAIN-NAME/get/YOUR-DOWNLOAD-URL
浏览 9
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报