Skip to Content
We are live but in Staging 🎉
CLI GuideRepos & Artifacts

Repos & Artifacts

Day-to-day management of what’s in the registry. Remember: repositories are created by docker push, not by the CLI — see the Quickstart.

repo list

List the repositories in your org:

dodil registry repo list
REPOSITORY ARTIFACTS PULLS VISIBILITY web 4 132 private worker 2 17 public

With -o json you get the full records — name, project_name, artifact_count, pull_count, creation_time, update_time, public.

visibility

Set a repository public or private. Public = anonymous pull allowed (pushes always require auth):

dodil registry visibility web public
acme/web is now public

Flip it back with dodil registry visibility web private. This is a top-level command — not repo visibility.

artifact list

List the artifacts (images) in a repository:

dodil registry artifact list web
DIGEST TAGS SIZE SCAN sha256:4f5c2a8b91d2 latest,1.2.0 52.4 MB Low sha256:9c01d7e2aa10 1.1.0 51.9 MB Critical

SCAN is the overall severity from the push-time CVE scan — drill in with vuln. JSON output includes digest, tags, size, media_type, push_time, pull_time, and the scan_overview.

artifact delete

Delete an artifact by digest or by tag — either reference removes the artifact and all its tags:

dodil registry artifact delete web 1.1.0 # or, precisely: dodil registry artifact delete web sha256:9c01d7e2aa10...
Deleted acme/[email protected]

tag list

List the tags on one artifact (referenced by digest or by any of its tags):

dodil registry tag list web latest
TAG PUSHED IMMUTABLE latest 2026-08-01T10:14:02Z false 1.2.0 2026-08-01T10:14:02Z true

pull-command

Print the copy-pasteable docker pull for a repository (tag defaults to latest):

dodil registry pull-command web 1.2.0
docker pull registry.dodil.io/acme/web:1.2.0

-o json returns {"reference": "...", "pull": "docker pull ..."} for scripting.

health

dodil registry health
status: ok service: registry

See also