请问: 使用cf的免费功能, 能不能做一个dockerhub的代理?

如题。 鉴于目前国内个镜像站相继停止服务、内网化或更新不及时, 能不能通过cf实现代理访问而不是备份镜像的方式? 如可行, 有没有现成的方案一键部署的

1 个赞

可行的 个人用 可以用之前在论坛发的万能代理的work

只需要代理 hub.docker.com吗

给你个样板 你可以根据情况自己再添加缓存来提高速度

addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
  const url = new URL(request.url)
  const dockerHubUrl = `https://registry.hub.docker.com${url.pathname}`
  const newRequest = new Request(dockerHubUrl, request)
  const response = await fetch(newRequest)
  return new Response(response.body, response)
}
5 个赞

收藏一下