This repo consists of configuration files to set up an authentiating caching proxy to ark.stackhhpc.com.
The proxy consists of two containers, deployed with docker compose. One is a Zot container registry on port 5000 (with web UI). The other is a generic http caching proxy based on nginx which covers three artefact types: Authenticated apt/dnf repo content from Ark on port 80, Ansible Galaxy collections and roles on port 8080, and PyPI packages on port 8081.
docker-compose.ymlA docker compose to deploy two containers - a Zot container registry, and a general nginx http caching proxyzot/config.jsonA config file for the Zot registrynginx.confA (poorly named) config file for caching Ark package repo content in the nginx containergalaxy.confA config file for caching Ansible Galaxy content in the nginx containerpypi.confA config file for caching PyPI content in the nginx container
Both the container registry and apt/dnf package cache require credentials to
reach Ark, which are omitted for obvious reasons. Zot reads its credentials from
zot/credentials.json, which you must create.
After cloning the repo and filling in the credentials, run docker compose up -d.