Colima is becoming a popular open alternative to Docker for Desktop. It provisions the Docker container runtime in a Lima VM, configures the Docker CLI on macOS and handles port-forwarding and volume mounts. Colima uses containerd as runtime, which is also the runtime on most managed Kubernetes services (thus improved dev-prod parity). With Colima you can easily use and test the latest features of containerd, such as lazy loading for container images. With its good performance, we’re watching Colima as a strong potential for the open-source alternative to Docker for Desktop.
Colima is an alternative to Docker Desktop that’s solely available as a command-line utility.
Under the hood Colima uses the Lima-VM, same as Rancher Desktop.
Lima launches Linux virtual machnes with automatic file sharing and port forwarding (similar to WSL2), and containerd.
Installation:
brew install colima
What is Colima?
It provides container runtimes on macOS with minimal setup. The current version is in usable alpha state and provides Docker and Kubernetes using Docker runtime. It requires Lima and Docker client (and kubectl if Kubernetes will be enabled).
Colima is a tool in the Container Tools category of a tech stack.
Colima is an open source tool with 5.1K GitHub stars and 128 GitHub forks.
Colima’s Features
- Port forwarding are automatic and accessible on the macOS host
- It assumes to be the default Docker context and will conflict with Docker for Mac. You should run either, not both
Reasons to use Colima include:
- Preferring to use open-source software (Docker Desktop, unlike Docker, is proprietary software).
- Working for an organization that due to its size requires a paid Docker plan to use Docker Desktop, and wanting to avoid that cost and business relationship.
- Preferring a CLI-focused approach to Docker Desktop’s GUI focus.
- Stability
Replacing Docker Desktop for Mac with Colima :
Docker Desktop for Mac is probably the most commonly used solution to run Docker on macOS. It runs the daemon in a VM, handles port-forwarding, shared folders and sets up the Docker CLI. It’s a quick and easy way to get Docker running on macOS.
Although technically it works fine, the following reasons made to look for a replacement:
- Closed-source
- Pop-ups asking “ how likely I am to recommend Docker Desktop to a coworker ”
- Weekly tips and anonymous reporting are enabled by default
- It makes a request to desktop.docker.com every time the settings are opened, even with anonymous reporting turned off
While there is the option to run something like Multipass or VirtualBox with a custom provisioning script for Docker and then configure shared folders, users looking for a drop-in replacement with minimal or no configuration.
Colima fits the criteria well. It’s based on Lima which creates a QEMU VM with HVF accelerator and handles the port-forwarding and folder sharing. Lima comes with containerd and nerdctl installed, but for a drop-in replacement the Docker container runtime is required which is what Colima is for.
Colima provisions the Docker container runtime in a Lima VM, configures the Docker CLI on macOS and handles port-forwarding and volume mounts. This makes Docker easily usable on macOS without any configuration, similar to Docker Desktop.
Since both solutions are based on the macOS HVF there is not much difference in terms of CPU and memory performance. However, shared folder performance has always been a bottleneck for Docker on macOS.
Colima is around 80% faster for both IOPS and bandwidth metrics.
For comparison, the native speed on macOS was 28.6k IOPS and 117MB/s bandwidth.
Conclusion
After testing Colima it is a great drop-in replacement for Docker Desktop. It even has faster performance for shared folders, which is another good argument to switch. There is no difference when running docker containers and all docker commands worked the same as before, which is great since none of the build-scripts had to be changed.
For more details contact info@vafion.com
Follow us on Social media : Twitter | Facebook | Instagram | Linkedin
Similar Posts:
- No similar blogs