Skip to content

Add support for WSL container runtime #179

Description

@karolz-ms

WSL now supports its own container runtime and CLI (wslc, https://learn.microsoft.com/en-us/windows/wsl/wsl-container).

We should support it on par with existing Docker and Podman runtimes.

Current WSLC support gaps

Track remaining gaps for supporting wslc as a DCP container runtime, measured against the capabilities DCP currently uses from Docker and Podman.

Blocking gaps

Gaps requiring workarounds or degraded functionality

  • Runtime events/watch support

    • Wslc events WSL#40971
    • Current wslc does not expose a Docker/Podman-style event stream.
    • DCP impact: container/network watches would require polling or another WSLC-specific strategy. Network watch support may still need separate validation even after container events land.
  • Post-create network connect/disconnect

    • Add wslc network connect and disconnect commands WSL#41011
    • Current wslc network supports create/remove/inspect/list/prune, but not connect or disconnect.
    • DCP impact: dynamic network attach/detach is not directly implementable. This is less important if DCP attaches all required networks during container creation.
  • Pull policy semantics during create/run

    • Current wslc container run has pull support commented out and does not expose Docker/Podman-style --pull=always|missing|never.
    • DCP impact: PullPolicyAlways / PullPolicyNever would need to be approximated with explicit image inspect/pull behavior before create/run.
  • Build secrets and platform selection

    • Current wslc image build supports path, build args, pull, target, Dockerfile, labels, no-cache, tags, and verbose output.
    • It does not appear to expose build secrets or build platform.
    • DCP impact: builds using ContainerBuildContext.Secrets or Platform would be degraded or unsupported.
  • Healthcheck configuration/status

    • Add support for container healthchecks WSL#41012
    • No Docker/Podman-style healthcheck configuration or health status equivalent was identified.
    • DCP impact: may block tests or future runtime behavior if DCP requires CreateContainerOptions.Healthcheck.
  • Stable host callback name

    • No obvious host.docker.internal, host.containers.internal, host-gateway, or --add-host equivalent was identified in the current wslc CLI surface.
    • DCP impact: may affect ContainerHost() and host callback/proxy paths that need a stable host name from inside containers.

Honorable mentions

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    Fields

    No fields configured for Task.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions