diff --git a/openhands/runtime/builder/docker.py b/openhands/runtime/builder/docker.py index 39a7982cd5..5f0fb2027b 100644 --- a/openhands/runtime/builder/docker.py +++ b/openhands/runtime/builder/docker.py @@ -19,8 +19,11 @@ class DockerRuntimeBuilder(RuntimeBuilder): version_info = self.docker_client.version() server_version = version_info.get('Version', '').replace('-', '.') + components = version_info.get('Components') self.is_podman = ( - version_info.get('Components')[0].get('Name').startswith('Podman') + components is not None + and len(components) > 0 + and components[0].get('Name', '').startswith('Podman') ) if ( tuple(map(int, server_version.split('.')[:2])) < (18, 9) @@ -79,8 +82,11 @@ class DockerRuntimeBuilder(RuntimeBuilder): self.docker_client = docker.from_env() version_info = self.docker_client.version() server_version = version_info.get('Version', '').split('+')[0].replace('-', '.') + components = version_info.get('Components') self.is_podman = ( - version_info.get('Components')[0].get('Name').startswith('Podman') + components is not None + and len(components) > 0 + and components[0].get('Name', '').startswith('Podman') ) if tuple(map(int, server_version.split('.'))) < (18, 9) and not self.is_podman: raise AgentRuntimeBuildError(