mirror of
https://github.com/games-on-whales/LXC2Docker.git
synced 2026-10-15 21:02:07 +00:00
[PR #51] [MERGED] fix(mounts): translate sibling-container bind sources to host paths #51
Labels
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
games-on-whales/LXC2Docker#51
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/games-on-whales/LXC2Docker/pull/51
Author: @JBailes
Created: 6/4/2026
Status: ✅ Merged
Merged: 6/4/2026
Merged by: @JBailes
Base:
main← Head:fix/sibling-mount-path-translation📝 Commits (2)
65f357efix(mounts): translate sibling-container bind sources to host paths02c8903test(mounts): cover sibling-container bind source translation📊 Changes
2 files changed (+109 additions, -0 deletions)
View changed files
📝
internal/api/containers.go(+48 -0)➕
internal/api/sibling_mount_test.go(+61 -0)📄 Description
When a managed container launches sibling containers via the Docker socket (Games-on-Whales Wolf does this for every app/compositor it streams) and can't introspect its own container, it passes one of its own in-container paths as a bind source. The runtime took that literally as a host path — which doesn't exist — so
lxc-startaborted the sibling. Result: Wolf streamed a black screen because the app/compositor container never started (Failed to mount "/etc/wolf/<session>/<app>" ... No such file or directory → ABORTING).Translate a bind source through the parent's mount mapping: when the literal source is missing on the host but falls under another managed container's mount destination, rewrite to that container's host source + remainder (only if the result exists). Valid host binds are untouched. Diagnosed live on a SmoothNAS appliance; the real host path (
/mnt/<pool>/.plugins/wolf/state/...) exists, only the in-container path was passed through.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.