跳到正文

LinkOS Mirrors ​

LinkOS Mirrors 是免费的公共容器镜像加速服务。每个上游仓库对应一个加速地址,把镜像地址里的仓库域名换成加速地址,照常拉取即可,不需要注册账号。

加速地址 ​

加速地址上游示例
docker.linkos.orgDocker Hub(docker.io)docker.linkos.org/library/nginx:latest
gcr.linkos.orggcr.iogcr.linkos.org/distroless/static:nonroot
ghcr.linkos.orgghcr.ioghcr.linkos.org/containerd/busybox:1.36
k8s.linkos.orgregistry.k8s.iok8s.linkos.org/pause:3.10
quay.linkos.orgquay.ioquay.linkos.org/coreos/etcd:v3.5.0

Docker Hub 的官方镜像(如 nginx、mysql)写成 library/<名称>,也可以直接写 docker.linkos.org/nginx。k8s.gcr.io 已于 2023 年冻结,Kubernetes 镜像请用 registry.k8s.io,对应 k8s.linkos.org。

快速使用 ​

通过加速地址拉取,再改回原来的名字:

bash
docker pull docker.linkos.org/library/nginx:latest
docker tag docker.linkos.org/library/nginx:latest nginx:latest
docker rmi docker.linkos.org/library/nginx:latest

想让所有 Docker Hub 镜像都自动走加速,在 /etc/docker/daemon.json 中加入以下内容(已有内容时请合并,不要整体覆盖),然后重启 Docker:

json
{
  "registry-mirrors": ["https://docker.linkos.org"]
}

Docker 的 registry-mirrors 只对 Docker Hub 生效,其他仓库的镜像仍需改写成加速地址。

containerd、Kubernetes 和 Podman ​

用浏览器打开任意一个加速地址(例如 docker.linkos.org),可以看到镜像地址转换工具,以及可直接复制的配置:containerd(hosts.toml)、k3s(registries.yaml)、Podman 和 CRI-O(registries.conf)、kind 和 kubeadm。

工作方式 ​

  • 只支持拉取。 不支持推送和 docker search,也不提供已缓存仓库的目录。
  • 有缓存。 一个镜像第一次被拉取时从上游获取并保存下来,之后再拉取同一镜像直接走缓存。7 天内没人拉过的镜像会被清理。
  • tag 跟随上游。 同一个 tag 最多每 5 分钟向上游确认一次,所以 latest 这类会变的 tag 更新后,可能要几分钟才能拉到新版本。需要确定的镜像时,请按摘要(@sha256:…)拉取。
  • 受上游限额影响。 Docker Hub 对匿名拉取按出口地址限额,而加速服务共用一个出口地址。很多人同时拉取还没缓存的新镜像时,可能返回 429,请稍后重试。
  • 错误码。 上游不存在或私有的镜像返回 503 而不是 404,请先检查镜像名。其他 5xx 错误重试即可。

自行部署 ​

LinkOS Mirrors 背后的配置是开源的。需要可靠性保障或更高限额时,可以自己部署一套:

状态与支持 ​

本服务按使用须知提供,记录的信息见隐私说明。