Skip to content

Docker VM (OrbStack Helper) spontaneously exits cleanly every few minutes while containers are running; GUI stays alive and all container ports die #2692

Description

@leo71233826

Describe the bug

The OrbStack Docker VM (hosted by OrbStack Helper as the launchd service com.apple.Virtualization.VirtualMachine) exits cleanly on its own at random intervals (observed 3–16 minutes) while containers are running. The OrbStack GUI app stays alive the whole time. Containers receive SIGTERM and stop (ExitCode 0), all forwarded ports die, and ~/.orbstack/run/docker.sock disappears until the engine is manually restarted via orb start.

The container is never the initiator — it is always terminated as part of a coordinated VM shutdown.

Environment

  • OrbStack 2.2.3 (2020300), installed 2026-08-25
  • macOS 26.6.1 (25G76), Apple Silicon (arm64)
  • On battery (29–47%), Low Power Mode off
  • Workload: a single long-lived web-service container (new-api), started with --restart unless-stopped

Evidence

1. Container layer — graceful SIGTERM, not a crash

Container ExitCode 0, RestartCount 0, OOMKilled=false; container logs: received signal: terminated, shutting down...

2. VM layer — vmgr receives an external stop request

vmgr | msg="Received signal, requesting stop"
vmgr | msg="stop requested" reason=0
kernel: received signal 15; shutting down
kernel: reboot: Power down

3. GUI layer — the GUI app survives (same PID across multiple VM deaths) and logs the same sequence at every death:

docker changed
synthetic state -> starting
k8s changed
Daemon exited: status 0
Host exit diagnostics:
- reason: status 0
- raw wait status: 0 (0x00000000)
- raw flags: 0x86000000
- exit detail: none
synthetic state -> stopped

4. launchd — Helper service torn down:

[pid/98342 [OrbStack Helper]:] shutting down
[pid/98342/com.apple.Virtualization.VirtualMachine:] internal event: PETRIFIED
[system:] removing child: pid/98342

Observed daemon uptimes before spontaneous exit

daemon start exit uptime
01:46:54 01:52:15 5m21s
02:03:39 02:19:53 16m14s
02:59:08 03:04:36 5m28s
03:07:11 03:10:11 3m00s

Control experiments / ruled out

  • Not idle/energy misjudgment: ran a busy loop (yes > /dev/null) inside the container pegging a vCPU — the VM still exited after exactly 3m00s.
  • Not system sleep: pmset -g log shows no Entering Sleep events in any of the death windows (01:00–03:12).
  • Not memory pressure / jetsam: zero matching events.
  • Not a crash: no .ips crash reports; every exit is clean (status 0).
  • Not auto-update: app bundle unchanged since 2026-08-25, still 2.2.3.
  • No external killer: crontab audited (one unrelated broken entry, since removed); no launchd agents touch OrbStack.
  • Docker CLI activity does not prevent it: a docker exec ran 2 min before one death; a docker ps ran 26 s before another.
  • No config toggle: probed orb config exhaustively — no key related to idle/stop/shutdown exists.

Related issues

Expected behavior

The Docker engine should keep running as long as containers exist — regardless of CPU activity — and never exit without an explicit user/automation request.

Happy to run orb diagnostics and attach the bundle, or capture more targeted logs on request.

Activity

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions