fix(apple-container): three runtime bugs that break first-time setup#1323
Closed
lazure-ocean wants to merge 1 commit intoqwibitai:skill/apple-containerfrom
Closed
fix(apple-container): three runtime bugs that break first-time setup#1323lazure-ocean wants to merge 1 commit intoqwibitai:skill/apple-containerfrom
lazure-ocean wants to merge 1 commit intoqwibitai:skill/apple-containerfrom
Conversation
1. Remove /dev/null host mount from container-runner.ts Apple Container (VirtioFS) only supports directory mounts, not file or device mounts. The /dev/null overlay used to shadow .env crashed every container start with "path '/dev/null' is not a directory". The Dockerfile entrypoint already handles .env shadowing inside the VM via mount --bind, so this host-side mount is redundant and must be removed. 2. Fix CONTAINER_HOST_GATEWAY for Apple Container host.docker.internal is a Docker-specific hostname injected into /etc/hosts by Docker Desktop. Apple Container VMs have no such entry. The host is reachable at the bridge100 interface IP (192.168.64.1). Now auto-detected via bridge100; falls back to host.docker.internal for Docker Desktop. 3. Fix PROXY_BIND_HOST for Apple Container The credential proxy was binding to 127.0.0.1 on macOS, which is not reachable from Apple Container VMs (they live on 192.168.64.0/24). Now binds to the bridge100 IP when present so containers can reach it. Falls back to 127.0.0.1 for Docker Desktop where loopback works. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This was referenced Mar 22, 2026
2 tasks
Collaborator
|
Thank you for identifying this — the fix is now in #1609 (skill branch) and #1610 (main). You're credited as a co-author on both commits and added to CONTRIBUTORS.md. The final approach requires |
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.
Summary
Found and fixed three bugs in the
skill/apple-containerbranch that cause setup to fail completely on a fresh macOS install./dev/nullhost mount fromcontainer-runner.ts— Apple Container (VirtioFS) only supports directory mounts, not file/device mounts. Every container start crashed withpath '/dev/null' is not a directory. The Dockerfile entrypoint already handles.envshadowing inside the VM viamount --bind(running as root), so this host-side mount is redundant.CONTAINER_HOST_GATEWAY—host.docker.internalis a Docker-specific hostname that Apple Container VMs don't have in/etc/hosts. The host is at thebridge100interface IP (192.168.64.1). Now auto-detected; falls back tohost.docker.internalfor Docker Desktop.PROXY_BIND_HOST— The credential proxy was binding to127.0.0.1, which isn't reachable from Apple Container VMs on192.168.64.0/24. Now binds to thebridge100IP when present; falls back to127.0.0.1for Docker Desktop.Test plan
.envis hidden from agent (verifiedmount --bindworks inside VM)192.168.64.1:3001🤖 Generated with Claude Code