whatisgithub

What is hubproxy?

787a68/hubproxy — explained in plain English

Analysis updated 2026-05-18

16GoAudience · ops devopsComplexity · 3/5LicenseSetup · moderate

In one sentence

A self-hosted proxy that speeds up and mirrors downloads from Docker Hub, GitHub, and Hugging Face, with rate limiting and access control built in.

Mindmap

A visual breakdown will appear here once this repo is fully enriched.

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Speed up docker pull commands by mirroring Docker Hub, GHCR, GCR, and Quay through your own proxy.

USE CASE 2

Download GitHub release assets, raw files, or clone repositories through a faster relay.

USE CASE 3

Export a batch of Docker images as offline tar files for machines without internet access.

USE CASE 4

Accelerate downloading Hugging Face AI model files.

What is it built with?

GoDockerTOMLPrometheus

How does it compare?

787a68/hubproxyb404dev/gitm8hadihonarvar/flock
Stars161616
LanguageGoGoGo
Setup difficultymoderateeasymoderate
Complexity3/52/54/5
Audienceops devopsdeveloperops devops

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Needs a server with a domain name to reverse proxy through, plus Docker or a binary install, default config is in src/config.toml.

MIT license: free to use, modify, and redistribute, including commercially, as long as you keep the copyright notice.

So what is it?

HubProxy is a self-hosted proxy server that speeds up downloads from Docker Hub, GitHub, and Hugging Face, which is useful in places where direct connections to those services are slow or unreliable. You run it on your own server, point your traffic at it, and it fetches and forwards the files on your behalf, acting as a shortcut in front of the original source. For Docker, it can mirror images from Docker Hub as well as other registries like GHCR, GCR, Quay, and Kubernetes' own registry, so a normal docker pull command can go through your proxy instead of hitting those services directly. It can also export images as offline tar files, either one at a time or in a batch, letting you download a set of images to move onto machines without internet access. For GitHub, it proxies file downloads including release assets, raw files, repository archives, API calls, and even git clone operations. For Hugging Face, it speeds up downloading AI model files. Other features include a search endpoint for looking up Docker Hub images and their available tags and architectures, configurable rate limiting per IP address or IP range, and a wildcard based allow list and block list for controlling which images or GitHub repositories can be proxied. It also exposes a health check endpoint and Prometheus formatted metrics for monitoring. You can run it as a single binary installed with a shell script, as a Docker container, or with Docker Compose. Configuration is set through a TOML file, and nearly every setting can also be overridden with an environment variable. The project builds on an earlier open source project by a different author and is released under the MIT license, meaning it is free to use, modify, and redistribute, including commercially.

Copy-paste prompts

Prompt 1
Walk me through deploying HubProxy with Docker Compose and pointing docker pull at it.
Prompt 2
Explain how to set up rate limiting rules using HubProxy's IP_LIMITS configuration.
Prompt 3
Help me configure a wildcard whitelist so only specific GitHub repos can be proxied.
Prompt 4
How do I export a batch of Docker images as offline tar files using HubProxy's API?
Prompt 5
Compare HubProxy's registry mirroring approach to setting Docker's built-in registry-mirrors option.

Frequently asked questions

What is hubproxy?

A self-hosted proxy that speeds up and mirrors downloads from Docker Hub, GitHub, and Hugging Face, with rate limiting and access control built in.

What language is hubproxy written in?

Mainly Go. The stack also includes Go, Docker, TOML.

What license does hubproxy use?

MIT license: free to use, modify, and redistribute, including commercially, as long as you keep the copyright notice.

How hard is hubproxy to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is hubproxy for?

Mainly ops devops.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.