Repository navigation
fix(store): one local registry container per port, never removed - #43
Merged
Merged
Conversation
…er port When registry_host named a port other than the one the `agentenv-registry` container publishes, bring-up ran `docker rm -f` on it and started a fresh one, deleting every image pushed to the old registry. It now stops with an error naming both ports and the two ways out: point registry_host at the container's port, or remove the container yourself. Nothing else changes: a registry already answering is used, a missing one is created, and a stopped one on the right port is started. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
polakamtejas
force-pushed
the
tejas/local-registry-per-port
branch
from
October 2, 2026 04:07
ef7e2d0 to
d0dcd75
Compare
agentenv-registry stays the default port's container; any other port gets agentenv-registry-<port>, so registries on different ports coexist instead of the second being refused, and each restarts by name with its own images. The port-mismatch refusal remains for an older version's agentenv-registry, which it ran on any port. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
earakely-scale
approved these changes
Oct 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The local image store brings up a
registry:2container namedagentenv-registryon first push. Ifregistry_hostnamed a different port from the one that container publishes, bring-up randocker rm -fon it and started a fresh one. That deleted every image pushed to the old registry.Change (
store/image_store/local_registry_image_store.py): each port gets its own container, and bring-up never removes one.agentenv-registry; any other port getsagentenv-registry-<port>. Registries on different ports run side by side, and each restarts by name with its own images./v2/is used as is, a missing container is created, and a stopped one is started.agentenv-registryon whatever port was configured. If that container is on another port when port 5000 needs the name, bring-up stops with:Not handled: an older version's
agentenv-registryon a non-default port that is stopped when you upgrade. A push to that port creates a new, emptyagentenv-registry-<port>, and the old images stay in the stopped container. It takes a non-default port, the older version and a container stopped by hand (--restart unless-stoppedbrings it back after a reboot, and a running one keeps answering/v2/and is used as before), so there's no code for it.Testing
tst/unit/store/local_registry_image_store_test.py(7 tests, docker faked):agentenv-registry, port 5001 runsagentenv-registry-5001agentenv-registryon another port is refused and never removedagentenv-registryon 5000: both came up asagentenv-registry-5097/-5098alongside it. Afterdocker stop agentenv-registry-5097, the next push restarted the same container (same id). The test containers were removed afterwards.test_mcp_cli_buildertests, because the generated CLI's interpreter has noclick. No plugin-API break.🤖 Generated with Claude Code
The PR is not ready to merge while a stopped older registry on a custom port can be replaced in use by an empty one.
Fix with agent prompt
Summary
The local image store now names managed registries by port and refuses to replace an older container mapped to a different port. This keeps existing registry images in place while letting another configured port use its own container.
agentenv-registry; other ports useagentenv-registry-<port>./v2/stay in use, and stopped containers on the requested port are started.Reviews (3) · Last reviewed commit: "fix(store): name the local registry cont..."