跳转到内容
GitHub

连接包管理器

Depsilo v0.11.0 支持的全部客户端、通用连接流程,以及确认请求经过代理缓存的方法。

Depsilo 代理 14 个标准生态,另有独立的 Docker OCI /v2/ 路由,共 15 个安装入口。所有客户端共用本页的流程与规则;每个生态的具体配置见左侧对应页面。

为开发机与 CI 共用缓存时,先看团队共享依赖缓存选择实例位置。需要复用 Rust 或 C/C++ 编译结果时,另看编译缓存;它与这里的依赖下载缓存是不同的接入流程。

  1. 确认服务可达

    终端窗口
    curl -fsS http://localhost:23333/ready

    本文档的示例假设服务地址是 http://localhost:23333。如果使用局域网地址、反向代理、HTTPS 或自定义端口,请把示例中的整个 origin 换成该客户端实际可达的地址;在浏览器中能打开 Portal,不代表 CI 或容器也能使用同一个 localhost。

  2. 配置一个客户端

    优先使用本次命令、项目或项目虚拟环境的配置,明确写入范围;需要修改用户级或系统级文件时,先备份原文件。合并目标设置并保留其他字段。对应生态页面会给出端点、示例和需要保留的校验设置。

  3. 发出真实请求

    执行对应客户端的请求,在 Admin 的 Access logs 中按时间、生态、包名与状态核对流量。元数据、索引与制品是不同的请求;客户端本地缓存可能使安装不产生下载,不能仅凭安装成功确认服务端命中。

  4. 独立验证制品缓存

    按验证缓存下载同一份制品两次,并核对对应的制品日志。该指南用 npm tarball 演示,其他生态需要检查各自的包文件。第一次也可能已经命中,是否回源以日志为准。

生态 常用客户端 服务端路由 配置
Python(PyPI) pip · uv · Poetry · Pipenv · PDM /pypi/simple/ 配置 Python
Node.js(npm) npm · pnpm · Yarn · Bun /npm/ 配置 Node.js
Go Modules go(GOPROXY) /go/ 配置 Go
Rust(Cargo) cargo /crates/ 配置 Rust
Java(Maven) Maven · Gradle /maven/ 配置 Java
Ruby(RubyGems) Bundler · gem /rubygems/ 配置 Ruby
PHP(Composer) composer /composer/ 配置 PHP
.NET(NuGet) dotnet · NuGet /nuget/v3/index.json 配置 .NET
Conda conda /conda/pkgs/… 配置 Conda
R(CRAN) R /cran/ 配置 CRAN
Debian / Ubuntu(APT) apt /apt/debian、/apt/ubuntu 配置 APT
Alpine apk /alpine/ 配置 Alpine
Helm helm /helm/ 配置 Helm
Hugging Face hf · Transformers /huggingface 配置 Hugging Face
Docker OCI Docker · containerd · Podman /v2/ 配置 Docker OCI

Docker registry 与 Hugging Face 的 upstream 不在首次设置向导中生成,使用前需要手工添加服务端配置,详见对应页面。

  • 先确认请求路径,再按制品验证步骤检查服务端缓存;重复安装、元数据命中和客户端本地缓存不能替代制品命中记录。
  • 在 Admin 的 Access logs 中核对对应请求的时间、生态、包名、状态和命中结果;已经缓存的制品可以在本轮第一次下载时命中。
  • 配置前记录原 registry、index 或 sources 及其范围;回滚时恢复原值,只移除本次新增的条目,保留其他配置,不增加并行公网 fallback。
  • 容器或远程环境中的 localhost 指向它自身。必须改成该客户端实际可达的 Depsilo 主机名或 IP。

请求没有经过 Depsilo、出现 451 或认证失败时,见故障排查。