From 4fd8b5be0a7aadd5f261578c3c8c886ba10285f8 Mon Sep 17 00:00:00 2001 From: Jiarui Yao <77535296+MaxwellJryao@users.noreply.github.com> Date: Wed, 23 Jul 2025 21:31:43 -0700 Subject: [PATCH] support docker without kvm (#282) --- desktop_env/providers/docker/provider.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/desktop_env/providers/docker/provider.py b/desktop_env/providers/docker/provider.py index 6fb1ee6..3d5cd20 100644 --- a/desktop_env/providers/docker/provider.py +++ b/desktop_env/providers/docker/provider.py @@ -97,11 +97,20 @@ class DockerProvider(Provider): self.vlc_port = self._get_available_port(8080) # Start container while still holding the lock + # Check if KVM is available + devices = [] + if os.path.exists("/dev/kvm"): + devices.append("/dev/kvm") + logger.info("KVM device found, using hardware acceleration") + else: + self.environment["KVM"] = "N" + logger.warning("KVM device not found, running without hardware acceleration (will be slower)") + self.container = self.client.containers.run( "happysixd/osworld-docker", environment=self.environment, cap_add=["NET_ADMIN"], - devices=["/dev/kvm"], + devices=devices, volumes={ os.path.abspath(path_to_vm): { "bind": "/System.qcow2",