Skip to content

Instantly share code, notes, and snippets.

@cernoel
Last active September 18, 2023 16:46
Show Gist options
  • Save cernoel/1f48b4b97b721153887efb458e84beff to your computer and use it in GitHub Desktop.
Save cernoel/1f48b4b97b721153887efb458e84beff to your computer and use it in GitHub Desktop.
zot config with ui enabled and docker as upstream repo
{
"distSpecVersion":"1.1.0-dev",
"storage":{
"dedupe": true,
"gc": true,
"gcDelay": "1h",
"gcInterval": "6h",
"rootDirectory":"/data/zot/"
},
"http": {
"address":"0.0.0.0",
"port":"443",
"tls" : {
"cert": "/etc/zot/server.crt",
"key": "/etc/zot/server.key"
},
"auth": {
"htpasswd": {
"path": "/etc/zot/htpasswd"
},
"failDelay": 5
},
"accessControl": {
"repositories": {
"/app/**": {
"policies": [
{
"users": ["upload"],
"actions": ["read", "create", "update"]
}
],
"defaultPolicy": ["read"],
"anonymousPolicy": ["read"]
},
"**": {
"defaultPolicy": ["read"],
"anonymousPolicy": ["read"]
}
},
"adminPolicy": {
"users": ["admin"],
"actions": ["read", "create", "update", "delete"]
}
}
},
"log": {
"level":"debug",
"output":"/logs/zot.log",
"audit":"/logs/zot-audit.log"
},
"extensions": {
"search": {
"enable": true
},
"sync": {
"enable": true,
"registries": [
{
"urls": [
"https://index.docker.io",
"https://ghcr.io"
],
"tlsVerify": true,
"onDemand": true,
"maxRetries": 3,
"retryDelay": "15m"
}
]
},
"scrub": {
"interval": "24h"
},
"ui": { "enable": true },
"mgmt": { "enable": true }
}
}
services:
zot:
# https://github.com/project-zot/zot/tree/main/build
# https://zotregistry.io/v1.4.3/general/releases/#getting-binary-images
image: ghcr.io/project-zot/zot-linux-amd64:v2.0.0-rc6 # we use full image
#images: ghcr.io/project-zot/zot-linux-amd64-minimal:v2.0.0-rc6
container_name: zot
hostname: docker.my.app
restart: unless-stopped
ports:
- 443:443
expose:
- 80
- 443
volumes:
- ./logs:/logs
- ./data:/data
- ./config.json:/etc/zot/config.json:ro
- ./htpasswd:/etc/zot/htpasswd:ro
- ./certs/server.key:/etc/zot/server.key:ro
- ./certs/server.crt:/etc/zot/server.crt:ro
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment