Auto-detect Rancher Desktop and Podman container runtimes#399
Open
skyrpex wants to merge 3 commits into
Open
Conversation
skyrpex
marked this pull request as ready for review
July 23, 2026 14:42
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.
What
lstknow works out of the box with Rancher Desktop and Podman, alongside Docker Desktop, Colima, OrbStack, and Lima:lstknow also resolves the current Docker CLI context (docker context use …/DOCKER_CONTEXT). An explicitDOCKER_HOSTstill always wins.rdctl start,podman machine start,colima start, …) instead of always assuming Docker Desktop.lstknow starts without 443 and prints a warning with a runtime-specific fix. HTTPS stays available on the edge port (4566 serves both HTTP and HTTPS). If you explicitly configured 443 viaGATEWAY_LISTEN, a conflict remains a hard error.Why
Users on Rancher Desktop or Podman had to manually export
DOCKER_HOST, and then still hit a fatal, cryptic port-443 error on startup. Discovery and startup should just work across Docker-API-compatible runtimes (DEVX-639, DEVX-637).How to test
lstk start— auto-detected via~/.rd/docker.sockor therancher-desktopdocker context. With Kubernetes enabled, expect the 443 warning with the Traefik hint (transcript below).podman machine init && podman machine start, quit other runtimes, thenlstk start— auto-detected via the podman machine socket; also works via a manually created context (docker context create podman --docker "host=unix://$(podman machine inspect --format '{{.ConnectionInfo.PodmanSocket.Path}}')" && docker context use podman). In rootless mode, expect the 443 warning with the--rootfulhint (transcript below).lstk start— auto-detected as before.DOCKER_HOST=unix://… lstk startmust beat context and auto-detection.lstk startshould suggest the start command for whatever runtime is installed.Before / after
Before (any runtime that cannot bind 443 — fatal):
After (rootless Podman machine — the daemon rejects the 443 bind at start time,
lstkretries without it):After (Rancher Desktop with Traefik holding 443 — caught by the preflight, before the image pull):
Closes DEVX-637
Towards DEVX-639