Skip to content

fix(stack): use fully qualified image references for Podman compatibility - #2

Merged
ebouther merged 1 commit into
ebouther:mainfrom
rebizzz:podman-compat-image-names
Oct 24, 2026
Merged

ebouther merged 1 commit into
ebouther:mainfrom
rebizzz:podman-compat-image-names

Conversation

@rebizzz

@rebizzz rebizzz commented Oct 23, 2026

Copy link
Copy Markdown

What this changes

Fully qualifies base images and service image references (docker.io/library/...) across Dockerfiles and generate-compose.py.

Why

Environments using Podman / podman-compose without unqualified-search registries defined fail to build or pull containers with short-name errors:

Error: short-name "busybox:1.36" did not resolve to an alias and no unqualified-search registries are defined in "/etc/containers/registries.conf"
Error: creating build container: short-name "ubuntu:22.04" did not resolve to an alias...

Explicitly qualifying image references with docker.io/library/ expands compatibility to Podman setups out of the box while remaining fully compatible with Docker.

How it was verified

Ran the test suite and CI validation:

python3 -m unittest discover -s tests -v # 126 tests pass
python3 stack/generate-compose.py
git diff --quiet -- stack/docker-compose.yml stack/config.json
WARP_ACCEPT_TOS=1 docker compose -f stack/docker-compose.yml config --quiet

Verified that image resolution and container build succeed on a Podman-backed host without short-name resolution errors.

Measured or inferred?

  • Measured — ran it, have the output, dated below
  • Inferred — reasoned from observations, not isolated
  • Speculative — a guess

Date: 2026-10-23
Command: docker compose up -d --build on a NixOS / Podman host

Checklist

  • python3 -m unittest discover -s tests passes
  • ./scripts/smoke.sh still reports ALL CHECKS PASSED (if the stack is running)
  • If stack/docker-compose.yml changed, the change came from stack/generate-compose.py
  • If stack/config.json changed, the engine restart requirement is noted above
  • No new runtime dependency
  • No secrets, keys, tokens, or egress addresses that identify me

@ebouther

Copy link
Copy Markdown
Owner

Thanks rebizzz! Tested locally and all 126 unit tests pass. Adding the docker.io/library prefix makes it work great on Podman without breaking Docker. Merging now.

@ebouther
ebouther merged commit f3802e3 into ebouther:main Oct 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants