Version0.1
Revision3
Licenseunset
Confinementstrict
Basecore24

Private charm registry for Juju and Charmcraft


Summary

Private charm registry for Juju and Charmcraft

Description

Charm Registry is a private charm registry compatible with stock Juju and Charmcraft workflows. It exposes Charmhub-compatible APIs and includes an embedded OCI registry for image resources.

Install and configure

sudo snap install spellbook
sudo snap set spellbook oci.secret-key="$(openssl rand -hex 32)"
sudo snap start spellbook

The snap defaults to standalone mode using SQLite and filesystem storage under /var/snap/spellbook/common/data/.

Useful commands

snap services spellbook
sudo snap logs spellbook.charm-registry
snap get spellbook
sudo snap restart spellbook

Configure public URLs

sudo snap set spellbook public-api-url=http://registry.example.com:8080
sudo snap set spellbook public-storage-url=http://registry.example.com:8080
sudo snap set spellbook public-registry-url=https://registry.example.com:5000

For production, configure OIDC, admin identities, TLS, and durable storage such as PostgreSQL and S3-compatible object storage.

By default a self-signed certificate is generated, when using the registry with charmcraft or juju you'll have to add this certificate to the trust store:

sudo cp /var/snap/charm-registry/common/certs/oci.crt /usr/local/share/ca-certificates/charm-registry-oci.crt
sudo update-ca-certificates

Admin CLI

spellbook.charm-registryctl --url https://registry.example.com:8080 --token "<admin-token>" sync list

Update History

0.1 2 → 3
19 Jun 2026, 14:30 UTC
0.1 (2)
19 Jun 2026, 13:30 UTC

Published19 Jun 2026, 13:19 UTC

Last updated19 Jun 2026, 13:53 UTC

First seen19 Jun 2026, 13:30 UTC