Skip to content

Add Docker runner options: KVM, socket mount, and privileged mode#15

Merged
depoll merged 1 commit intomainfrom
feature/docker-runner-options
Jan 4, 2026
Merged

Add Docker runner options: KVM, socket mount, and privileged mode#15
depoll merged 1 commit intomainfrom
feature/docker-runner-options

Conversation

@depoll
Copy link
Copy Markdown
Owner

@depoll depoll commented Dec 31, 2025

Summary

Adds three new options for Docker runner pools to support various container workloads:

New Options

  1. Enable KVM (enableKvm) - Linux only

    • Mounts /dev/kvm into containers
    • Enables hardware virtualization for Android emulators, nested VMs, etc.
    • Requires KVM support on the host
  2. Mount Docker Socket (enableDockerSocket)

    • Mounts /var/run/docker.sock into containers
    • Docker-out-of-Docker pattern - uses host's Docker daemon
    • Fast, shares image cache with host
    • Works on all platforms (macOS, Linux, Windows)
  3. Privileged Mode (enablePrivileged)

    • Runs containers with --privileged flag
    • Enables true Docker-in-Docker (nested Docker daemon)
    • Full isolation but slower and elevated permissions

Changes

  • Backend: Added new database columns with migrations, updated pool API endpoints
  • Frontend: Added checkboxes in pool creation form (with help text), badges on pool cards

UI Preview

When creating a Docker pool:

  • KVM checkbox only appears on Linux hosts
  • Docker socket and privileged mode available on all platforms
  • Warning text for privileged mode

Pool cards show badges for enabled options (KVM, Docker socket, Privileged)

Testing

  • All existing tests pass
  • TypeScript compiles without errors
  • Build succeeds

- Add enable_kvm option for Linux hardware virtualization (Android emulators, nested VMs)
- Add enable_docker_socket option to mount host Docker socket (Docker-out-of-Docker)
- Add enable_privileged option for full privileged mode (Docker-in-Docker)
- Update database schema with new columns and migrations
- Update pool API endpoints to handle new options
- Add UI controls for Docker pools with descriptive help text
- Show enabled options as badges on pool cards
@depoll depoll merged commit 957029e into main Jan 4, 2026
4 checks passed
@depoll depoll deleted the feature/docker-runner-options branch January 4, 2026 18:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant