Navigate:
Colima
~$COLIM0.9%

Colima: Container runtimes on macOS and Linux

Lima-based container runtime provisioning for macOS and Linux.

LIVE RANKINGS • 10:20 AM • STEADY
TOP 100TOP 100TOP 100TOP 100TOP 100TOP 100TOP 100TOP 100TOP 100TOP 100TOP 100TOP 100
OVERALL
#54
38
DEVELOPER TOOLS
#10
4
30 DAY RANKING TREND
ovr#54
·Devel#10
STARS
27.2K
FORKS
542
7D STARS
+242
7D FORKS
+10
See Repo:
Share:

Learn more about Colima

Colima is a container runtime provisioning tool for macOS and Linux that provides Docker and Kubernetes environments through lightweight virtual machine abstraction. It builds on Lima (Linux virtual machines on macOS) to create configurable VM instances with customizable CPU, memory, and disk allocations, supporting multiple virtualization backends including VZ and QEMU with various mount type options like virtiofs for filesystem sharing. The tool implements a profile-based architecture that allows users to maintain multiple isolated container runtime environments with different configurations, enabling seamless switching between development contexts such as standard Docker setups and Kubernetes clusters with specific version requirements. Colima integrates directly with existing container tooling by exposing standard Docker socket interfaces and kubectl configurations, making it compatible with the broader container ecosystem without requiring changes to existing workflows.

Colima

1

Multiple runtime support

Colima can provision Docker, Containerd, Incus, or run as a headless VM manager. Users can switch between runtimes or run multiple instances with different configurations.

2

Lima-based virtualization

Built on Lima, Colima leverages native hypervisors (HyperKit on Intel, Virtualization Framework on Apple Silicon) rather than requiring Docker Desktop or other container-specific virtualization layers.

3

Configuration-driven customization

VM resources like CPU, memory, and disk can be adjusted via CLI flags or configuration files, with disk size adjustable after initial creation. Rosetta 2 emulation is available on Apple Silicon for running x86 containers.


import subprocess
import json

# Check status of default Colima instance
result = subprocess.run(
    ['colima', 'status', '--json'],
    capture_output=True,
    text=True
)
status = json.loads(result.stdout)
print(f"Runtime: {status['runtime']}, State: {status['state']}")

vv0.9.1

Hotfix release to address disk error issues for a subset of users.

  • vm: fix root disk size getting set to zero
  • k3s: customizable listen port
vv0.9.0

New release with several fixes and features including improved DNS resolution and configurable port forwarder.

  • Reinstated previous behavior with templates - Colima loads config from template file if present
  • Improved DNS resolution for host.docker.internal in Docker, Containerd and Kubernetes containers
  • Removed /tmp/colima as default mount due to multi-user issues on macOS
  • Port forwarder now configurable between ssh and grpc with --port-forwarder flag
  • Fix for 386 architecture emulation when Rosetta is enabled
vv0.8.4

Hotfix release addressing cross-architecture container execution regression and template loading changes.

  • Disable implicit loading of config from template - now requires --template flag
  • Cross-architecture container execution can be disabled by setting --binfmt=false flag
  • vm: fix binfmt not enabled after restart


[ EXPLORE MORE ]

Related Repositories

Discover similar tools and frameworks used by developers