Skip to content

feat(docker): select supervisor bridge networking for ECI workloads #4015

Open

Description

@drew

User Story

As an OpenShell operator using Docker Desktop with Enhanced Container Isolation (ECI), I want the supervisor to choose compatible networking automatically, so I can keep ECI enabled without creating a diagnostic container.

Problem Statement

The Docker driver always runs the trusted supervisor with host networking. Docker Desktop disallows that mode under ECI. The default gateway callback endpoint is also loopback, which refers to the supervisor itself when bridge networking is used.

Impact / Why This Matters

ECI users cannot launch the current supervisor. Disabling ECI is the workaround, but it conflicts with centrally enforced container isolation. Requiring manual networking choices for ordinary Desktop installations adds setup work and does not solve the hardcoded supervisor mode.

Proposed Design

Expose an operator-owned supervisor networking choice of auto, host, or bridge. Auto preserves host networking for ordinary workloads and selects bridge for workloads inspected as using Sysbox/ECI. Bridge mode automatically uses a Docker-host callback endpoint for standard Desktop configurations; explicit gateway endpoints remain authoritative. Preserve workload network isolation and TLS verification. Provide actionable guidance for Linux loopback-only gateway listeners and incompatible explicit endpoints. No diagnostic container is created.

Acceptance Criteria

  • Default auto mode selects bridge for Sysbox/ECI workloads and host for ordinary workloads.
  • Explicit host and bridge settings override automatic selection.
  • Desktop bridge mode derives a Docker-host endpoint when grpc_endpoint is omitted.
  • Explicit endpoints retain their host, port, scheme, and TLS verification.
  • Native Linux bridge mode reports an actionable error for an implicit loopback-only gateway listener.
  • Workloads retain network=none and their existing isolation requirements.
  • Restarted supervisors use the same selection rules; host aliases resolve from supervisor-owned Docker metadata.
  • Unit tests, Docker E2E verification, configuration docs, and operational guidance cover the change.

Alternatives Considered

Always bridge would require changes to Linux loopback-only gateway and upstream services. A probe container would add startup work and is unnecessary for this heuristic. Always host requires disabling ECI.

Agent Investigation

The driver already inspects workload containers, and Docker documents HostConfig.Runtime=sysbox-runc as an ECI indicator. This changes networking compatibility only; full ECI qualification still requires testing the existing Landlock and seccomp boundary under Docker Desktop.

Activity

  1. github-actions commented on Oct 15, 2026

    @github-actions

    This issue has had no activity for 14 days and is now marked stale. It may be closed in 14 days if there is no further activity. Comment or remove the state:stale label to keep it open.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    state:staleInactive item at risk of automatic closure.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions