zot-docker-proxy

command module
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 13, 2025 License: MIT Imports: 6 Imported by: 0

README

zot-docker-proxy

Release go.mod version GoReportCard License Release codecov

A simple proxy server for Zot to enable use of the Docker CLI. This is to work around Zot issue 2928, as Zot will not add support for the Docker CLI.

Huge shoutout to @gabe565 for the original implementation of this proxy server and discovering the changes needed to support the Docker CLI.

Usage

The proxy server is configured either by command line flags, a configuration file, or environment variables. All three methods can be used together, with command line flags taking precedence over environment variables, which take precedence over the configuration file.

Configuration Options
Flag Env Variable Config File Option Description Default
--log-level LOG_LEVEL log-level The log level to use. Options are debug, info, warn, error. info
--port PORT port The port to listen on for incoming connections. 8080
--secret SECRET secret Secret used to sign tokens, required. None (must specify)
--zot-url ZOT_URL zot-url The URL of the Zot registry to proxy requests to. Must be specified. None (must specify)
--my-url MY_URL my-url The URL of this zot-docker-proxy instance. Used in the token service to generate URLs. Must be specified. None (must specify)
--cors-allowed-origins CORS_ALLOWED_ORIGINS cors-allowed-origins A list of allowed origins for CORS. If not specified, all origins are allowed. ["https://*","http://*"]
--config CONFIG N/A The path to the configuration file. config.yaml
Minimal Example Configuration File
zot-url: https://zot.example.com
my-url: http://localhost:8080
secret: change-me
Running with Docker
docker run -d \
    -p 8080:8080 \
    -e ZOT_URL=https://zot.example.com \
    -e MY_URL=http://localhost:8080 \
    -e SECRET=change-me \
    --name zot-docker-proxy \
    ghcr.io/usa-reddragon/zot-docker-proxy:latest
Building from Source
git clone https://github.com/USA-RedDragon/zot-docker-proxy.git
cd zot-docker-proxy
go build .
./zot-docker-proxy --zot-url https://zot.example.com --my-url http://localhost:8080 --secret change-me

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL