# goproxyio/goproxy

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/goproxyio-goproxy).**

5,871 stars · 366 forks · Go · mit

## Links

- GitHub: https://github.com/goproxyio/goproxy
- Homepage: https://goproxy.io
- awesome-repositories: https://awesome-repositories.com/repository/goproxyio-goproxy.md

## Topics

`go` `golang` `goproxy` `module` `proxy`

## Description

goproxy is a Go module proxy server that caches and serves Go module dependencies to accelerate builds and improve reliability. It acts as an HTTP server that proxies requests to upstream sources, caching downloaded modules locally so repeated requests are served instantly without re-downloading. The project provides a mirror that stores a read-only copy of public Go modules for offline or accelerated access, and can bypass checksum database verification for private or unrecognized modules.

The proxy is configured entirely through Go environment variables like GOPROXY, GONOSUMCHECK, and GONOSUMDB, without requiring source code modifications. It supports glob-pattern routing to selectively route module requests to the proxy, bypass it, or skip checksum verification based on path matching. Private module paths can be marked to bypass the public proxy and checksum database, while checksum database integration verifies module integrity by comparing cryptographic hashes against a trusted public database for reproducible builds.

The project includes Docker container deployment with optional volume mounts to persist the module cache across restarts, and supports shell-profile persistence so every terminal session inherits the proxy configuration automatically. IDE proxy configuration is available for GoLand to route module downloads through the proxy instead of direct version control access. Health-monitoring infrastructure with automated uptime monitoring and alerting systems detects and responds to proxy service outages or degradation, maintaining a 99.99% uptime SLA for reliable module access.

## Tags

### DevOps & Infrastructure

- [Cached Module Servers](https://awesome-repositories.com/f/devops-infrastructure/dependency-management/environment-scoping-controls/linked-dependency-management/module-based-dependency-managers/go-module-organization/cached-module-servers.md) — A caching proxy that stores downloaded modules locally so repeated requests are served instantly without re-downloading. ([source](https://goproxy.io/docs/introduction.html))
- [Module Proxies](https://awesome-repositories.com/f/devops-infrastructure/dependency-management/environment-scoping-controls/linked-dependency-management/module-based-dependency-managers/go-module-organization/module-proxies.md) — An HTTP server that caches and serves Go module dependencies to speed up builds and reduce direct VCS fetches. ([source](https://goproxy.io/docs/introduction.html))
- [Go Module Organization](https://awesome-repositories.com/f/devops-infrastructure/dependency-management/environment-scoping-controls/linked-dependency-management/module-based-dependency-managers/go-module-organization.md) — Provides a cached proxy server that fetches and serves Go module dependencies to accelerate builds. ([source](https://goproxy.io/docs/introduction.html))
- [Module Mirrors](https://awesome-repositories.com/f/devops-infrastructure/dependency-management/environment-scoping-controls/linked-dependency-management/module-based-dependency-managers/go-module-organization/module-mirrors.md) — Ships a mirror server that caches Go module downloads to reduce latency and avoid upstream failures. ([source](https://goproxy.io/docs/introduction.html))
- [Module Proxy Environment Configurations](https://awesome-repositories.com/f/devops-infrastructure/dependency-management/environment-scoping-controls/linked-dependency-management/module-based-dependency-managers/go-module-organization/module-proxy-environment-configurations.md) — Configures the Go module proxy URL so the go command fetches modules through the proxy instead of directly. ([source](https://goproxy.io/docs/getting-started.html))
- [Module Proxy Protocols](https://awesome-repositories.com/f/devops-infrastructure/dependency-management/environment-scoping-controls/linked-dependency-management/module-based-dependency-managers/go-module-organization/module-proxy-protocols.md) — Implements the Go module proxy protocol to route module requests through a central caching server.
- [Module Proxy Override Rules](https://awesome-repositories.com/f/devops-infrastructure/configuration-management/configuration-resolution-engines/configuration-overrides/module-system-overrides/proxy-config-overrides/module-proxy-override-rules.md) — Sets separate glob patterns to control which modules bypass the proxy and which skip checksum verification. ([source](https://goproxy.io/docs/GOPRIVATE-env.html))
- [Environment Variable Configuration](https://awesome-repositories.com/f/devops-infrastructure/configuration-management/environment-management/environment-variable-management/environment-variable-configurations/environment-variable-configuration.md) — Configures proxy behavior entirely through Go environment variables like GOPROXY, GONOSUMCHECK, and GONOSUMDB.
- [Docker Container Deployments](https://awesome-repositories.com/f/devops-infrastructure/container-orchestration/container-runtimes/runtime-configuration-interfaces/docker-socket-orchestrators/docker-target-configurators/docker-container-deployments.md) — Deploy the proxy as a Docker container with optional volume mounts to persist the module cache. ([source](https://cdn.jsdelivr.net/gh/goproxyio/goproxy@master/README.md))
- [Private Module Path Markings](https://awesome-repositories.com/f/devops-infrastructure/dependency-management/environment-scoping-controls/linked-dependency-management/module-based-dependency-managers/go-module-organization/module-proxies/private-module-path-markings.md) — Mark specific module path patterns as private so the go command bypasses the public proxy and checksum database for them. ([source](https://goproxy.io/docs/GOPRIVATE-env.html))
- [Module Proxy High Availability](https://awesome-repositories.com/f/devops-infrastructure/high-availability-systems/module-proxy-high-availability.md) — Maintain enterprise monitoring and a 99.99% uptime SLA to ensure reliable module access. ([source](https://goproxy.io/))

### Development Tools & Productivity

- [Proxy Caches](https://awesome-repositories.com/f/development-tools-productivity/package-caches/proxy-caches.md) — Acts as a caching proxy that intercepts and stores public Go module requests to accelerate installation. ([source](https://cdn.jsdelivr.net/gh/goproxyio/goproxy@master/README.md))
- [Glob Pattern Selectors](https://awesome-repositories.com/f/development-tools-productivity/file-pattern-matching/regex-based-file-selection/glob-pattern-selectors.md) — Uses glob patterns to selectively route module requests to the proxy, bypass it, or skip checksum verification.

### Networking & Communication

- [Proxy Configurations](https://awesome-repositories.com/f/networking-communication/proxy-servers/proxy-configurations.md) — Configures the Go toolchain to fetch dependencies through a global proxy server for faster and more reliable downloads. ([source](https://goproxy.io/))

### Operating Systems & Systems Programming

- [Module Checksum Verifications](https://awesome-repositories.com/f/operating-systems-systems-programming/checksum-utilities/data-integrity-checksums/module-checksum-verifications.md) — Authenticate downloaded modules by comparing cryptographic checksums against a trusted database to ensure repeatable builds. ([source](https://goproxy.io/docs/GOSUMDB-env.html))
- [Private Module Bypasses](https://awesome-repositories.com/f/operating-systems-systems-programming/checksum-utilities/data-integrity-checksums/module-checksum-verifications/private-module-bypasses.md) — Marking specific module paths as private to bypass the public proxy and checksum database for internal code.
- [Checksum Bypasses](https://awesome-repositories.com/f/operating-systems-systems-programming/checksum-utilities/data-integrity-checksums/module-checksum-verifications/checksum-bypasses.md) — A proxy that can skip checksum database verification for private or unrecognized modules to accept them without validation.
- [Checksum Verification Bypasses](https://awesome-repositories.com/f/operating-systems-systems-programming/checksum-utilities/data-integrity-checksums/module-checksum-verifications/checksum-verification-bypasses.md) — Disable checksum database lookups for specific modules or globally to accept unrecognized modules without verification. ([source](https://goproxy.io/docs/GOSUMDB-env.html))
- [Checksum Verification Overrides](https://awesome-repositories.com/f/operating-systems-systems-programming/checksum-utilities/data-integrity-checksums/module-checksum-verifications/checksum-verification-overrides.md) — Overriding or disabling checksum database lookups for specific modules to accept unrecognized dependencies.

### Security & Cryptography

- [Private Repository Access](https://awesome-repositories.com/f/security-cryptography/private-repository-access.md) — Allow specified private repositories to be fetched directly, bypassing the proxy for secure access. ([source](https://goproxy.io/))
- [Proxy Bypass Configurations](https://awesome-repositories.com/f/security-cryptography/private-repository-access-controls/proxy-bypass-configurations.md) — Exclude specified repositories from the proxy so private modules are fetched directly from their source. ([source](https://goproxy.io/))

### System Administration & Monitoring

- [Upstream Health Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/health-monitoring/instance-health-monitors/microservices-health-monitoring/upstream-health-monitoring.md) — Using automated monitoring and alerting to maintain high availability for Go module proxy services.
- [Service Uptime Monitors](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability/observability-platforms/availability-uptime-trackers/service-uptime-monitors.md) — Use automated monitoring and alerting to maintain high availability for module proxy services. ([source](https://goproxy.io/))

### Web Development

- [Module Request Routings](https://awesome-repositories.com/f/web-development/request-routing/module-request-routings.md) — Routes public module requests to an upstream proxy and private ones directly to their source repositories. ([source](https://cdn.jsdelivr.net/gh/goproxyio/goproxy@master/README.md))
