2024-02-24 16:39:26 +08:00
2024-02-24 10:09:14 +08:00
2024-02-24 10:09:14 +08:00
2024-02-24 16:33:42 +08:00
2024-02-24 10:09:14 +08:00
2024-02-24 10:09:14 +08:00
2024-02-24 10:09:14 +08:00
2024-02-24 10:09:14 +08:00
2024-02-24 16:39:26 +08:00
2024-02-24 10:09:14 +08:00

LightMirrors

LightMirrors是一个开源的缓存镜像站服务用于加速软件包下载和镜像拉取。 目前支持DockerHub、PyPI、PyTorch、NPM等镜像缓存服务。

GitHub GitHub

Demo


Quick Start

Prerequisites

  • docker + docker-compose.
  • 一个域名,设置 *.local.homeinfra.org 的A记录指向您的服务器.
  • 代理服务器(如有必要).
  • 一个Cloudflare账户非强制也可以使用其他DNS服务请自行修改Caddy

Deployment

修改 .env 文件,设置下列参数:

  • BASE_DOMAIN: 基础域名,如 local.homeinfra.org,镜像站将会使用 *.local.homeinfra.org 的子域名。
  • CLOUDFLARE_DNS_API_TOKENCloudflare的API Token用于管理DNS申请HTTPS证书。
  • RPC_SECRETAria2的RPC密钥。
  • all_proxy:代理服务器地址,如有必要。
docker-compose up

Design

LightMirrors依赖于三个组件

  • aria2 + Aria2Ng : 下载器与管理UI。
  • mirrors: 镜像HTTP服务器。
  • caddy: HTTP网关。

Test

假设我们的域名为 local.homeinfra.org

subdomain source test command
pypi https://pypi.org pip3 download -i https://pypi.local.homeinfra.org/simple jinja2
torch https://download.pytorch.org pip3 download -i https://torch.local.homeinfra.org/whl/ torch
dockerhub https://registry-1.docker.io/v2 docker pull docker.local.homeinfra.org/alpine

Star History

Star History Chart

Description
LightMirrors is a lightweight mirror server with caching capabilities that currently supports DockerHub, PyPI, PyTorch, and NPM.
Readme 895 KiB
Languages
Python 88.9%
Shell 6.9%
Dockerfile 3.6%
Makefile 0.6%