使用Jsdelivr-Proxy自建jsDelivr CDN代理教程

技术教程
提示

本文由人工智能辅助创作,已经过人工审核,确保内容准确性和实用性。请在使用前自行验证相关内容。

使用Jsdelivr-Proxy自建jsDelivr CDN代理教程

一个基于 Node.js 的 jsDelivr CDN 代理服务,支持 npm 包、GitHub 仓库和 WordPress 资源的访问控制。

特性

  • 支持 npm、GitHub 和 WordPress 资源代理
  • 基于白名单的访问控制
  • 内置缓存机制
  • 可视化管理界面
  • Docker 部署支持

Docker 部署

如果你的系统中还没有安装 Docker,可以按照以下步骤进行安装:
Linux 系统(以 Ubuntu 为例):

  1. 更新软件包索引

    1
    sudo apt update
  2. 安装必要的依赖

    1
    sudo apt install apt-transport-https ca-certificates curl software-properties-common
  3. 添加 Docker 的官方 GPG 密钥

    1
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
  4. 添加 Docker 的 APT 源

    1
    sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
  5. 更新软件包索引

    1
    sudo apt update
  6. 安装 Docker

    1
    sudo apt install docker-ce
  7. 如果你处于中国大陆境内
    可以使用国内镜像加速 Docker 的安装和更新,例如:

    1
    2
    3
    4
    5
    6
    7
    8
    sudo apt-get update
    sudo apt-get install ca-certificates curl -y
    sudo install -m 0755 -d /etc/apt/keyrings
    sudo curl -fsSL https://mirrors.cloud.tencent.com/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
    sudo chmod a+r /etc/apt/keyrings/docker.asc
    echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://mirrors.cloud.tencent.com/docker-ce/linux/ubuntu/ \
    $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    sudo apt-get update

    执行以下命令,安装 Docker。

1
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  1. 启动 Docker 服务
    1
    sudo systemctl start docker
  2. 验证 Docker 是否安装成功
    1
    sudo docker --version

Windows 系统:

  1. 下载 Docker Desktop 安装包:Docker Desktop for Windows
  2. 运行安装包并按照提示完成安装。
  3. 安装完成后,启动 Docker Desktop 并确保 Docker 正常运行。
  4. 验证 Docker 是否安装成功:
    1
    docker --version

安装 Jsdelivr-Proxy

1
2
3
4
5
6
7
8
9
10
11
# 克隆仓库
git clone https://github.com/hmsjy2017/jsdelivr-proxy

# 设置目录权限
chown -R 1000:1000 app

# 构建并启动容器
docker compose up -d

# 查看容器状态
docker ps

手动部署

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 安装 Node.js 和 npm
sudo apt update
sudo apt install nodejs npm

# 检查 Node.js 和 npm 版本
node -v
npm -v

# 克隆仓库
git clone https://github.com/hmsjy2017/jsdelivr-proxy
# 进入项目目录
cd jsdelivr-proxy
# 安装依赖
cd app
npm install

# 启动服务
npm start

使用 pm2 进行进程管理

如果你希望在服务器重启后自动启动 Jsdelivr-Proxy 服务,可以使用 pm2 进行进程管理。首先安装 pm2:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 克隆仓库
git clone https://github.com/hmsjy2017/jsdelivr-proxy
# 进入项目目录
cd jsdelivr-proxy/app
# 安装 pm2
npm install -g pm2
# 启动 Jsdelivr-Proxy 服务
pm2 start app.js --name jsdelivr-proxy
# 设置 pm2 在系统重启后自动启动
pm2 startup
# 保存当前的进程列表
pm2 save
# 查看 pm2 管理的进程
pm2 list

管理面板

访问 http://[IP]:3000/admin 进入管理面板:

  • 查看服务状态
  • 管理白名单
  • 配置缓存
  • 修改系统设置
    默认管理员密钥:admin

本文作者:墨尘

本文链接: https://blog.sord.top/posts/ea060019.html

文章默认使用 CC BY-NC-SA 4.0 协议进行许可,使用时请注意遵守协议。

评论