Alternativas a Docker Desktop en macOS: OrbStack, Lima, Podman y más

Los usuarios de macOS tienen varias opciones sólidas para ejecutar contenedores (containers), cada una con sus propias fortalezas. Revisamos OrbStack, Lima (Linux Machines) y Docker Desktop, comparando sus características, rendimiento y facilidad de uso para ayudarte a elegir la que mejor se adapte a tu flujo de trabajo de desarrollo. Tanto si eres un veterano experimentado en Kubernetes como si acabas de empezar a trabajar en contenedores, revisamos qué herramienta podría ser tu mejor complemento para trabajar usando containers en macOS.

Contenedores: Por qué nos encantan?

Los contenedores (containers) han tomado el mundo del desarrollo por asalto, y por una buena razón. Empaquetan las aplicaciones y sus dependencias en unidades ordenadas y portátiles, lo que facilita el traslado del software entre diferentes entornos sin pesadillas de compatibilidad. Esta portabilidad es un regalo del cielo para los desarrolladores, ya que les permite construir y probar aplicaciones en entornos consistentes que reflejan fielmente la producción.

Docker Desktop: El standard de facto... bueno, más o menos

Docker Desktop ha sido durante mucho tiempo la opción preferida para ejecutar (running) contenedores (containers) en macOS. Su interfaz fácil de usar y su estrecha integración con las herramientas de desarrollo más populares lo convirtieron en uno de los favoritos entre los desarrolladores. Sin embargo, los recientes cambios en las licencias de Docker Desktop, especialmente para las grandes organizaciones, han hecho que algunos usuarios busquen alternativas.

Opciones?: OrbStack y Lima

Han surgido dos contendientes, con el objetivo de destronar a Docker Desktop y capturar los corazones de los desarrolladores de macOS:

OrbStack

Este recién llegado se centra en la velocidad y la eficiencia. Construido sobre Rust, presume de un rendimiento impresionante y una huella ligera. OrbStack pretende proporcionar una experiencia de desarrollo fluida con características como un clúster (cluster) Kubernetes integrado y soporte para Docker Compose.

0:00
/0:45

Lima (LInux MAchines)

Un veterano en el mundo del código abierto, Lima ofrece flexibilidad y personalización. Te permite crear máquinas virtuales Linux específicamente diseñadas para ejecutar contenedores (containers), lo que te da un control granular sobre tu entorno de desarrollo. Lima puede resultar atractiva para los desarrolladores que prefieren un enfoque más práctico y quieren jugar con su configuración.

Lima: La forma más fácil de ejecutar cualquier distribución de Linux, Kubernetes, k3s e incluso Docker en macOS y Linux, compatible con Apple Silicon (M1/ARM64)
Qué es Lima: Una herramienta de línea de comandos (CLI) versátil y fácil de usar para ejecutar máquinas virtuales (VM) de Linux en tu sistema macOS o Linux Lima es compatible con cualquier procesador Apple Silicon (M1, M2, etc.) y procesadores Intel x86_64, y te permite ejecutar VMs de

Comparando a los contendientes

Vamos a desglosar las diferencias clave entre OrbStack, Lima y Docker Desktop:

OrbStack Lima Docker Desktop
Rendimiento Extremadamente rápido, gracias a su arquitectura basada en Rust Buen rendimiento, pero puede variar dependiendo de la configuración de la máquina virtual Buen rendimiento, pero puede consumir muchos recursos
Facilidad de uso Interfaz fácil de usar y configuración sencilla Requiere algunos conocimientos de línea de comandos; se necesita más configuración Interfaz fácil de usar y configuración sencilla
Características Kubernetes integrado, compatibilidad con Docker Compose, port forwarding Altamente personalizable, soporta diferentes distribuciones de Linux Características completas, incluyendo soporte para Kubernetes, creación de imágenes (image building) y análisis de vulnerabilidades (vulnerability scanning)
Coste Gratuito para uso personal; planes de pago para equipos De código abierto y gratuito Gratuito para uso personal y pequeños equipos; planes de pago para grandes organizaciones

Elegir tu campeón: ¿Cuál es el adecuado para ti?

El mejor motor de contenedores (container engine) para tu flujo de trabajo de desarrollo en macOS depende de tus necesidades y prioridades específicas:

  • Si el rendimiento en bruto es tu prioridad, los tiempos de inicio de OrbStack podrían convertirlo en tu opción ideal.
  • Para los desarrolladores que anhelan la personalización y disfrutan ensuciándose las manos con la configuración, la flexibilidad de Lima podría ser una combinación perfecta.
  • Si prefieres una interfaz fácil de usar y una experiencia optimizada, Docker Desktop sigue siendo una opción sólida, especialmente para aquellos que ya están familiarizados con su ecosistema.

Seamos prácticos: Instalar y ejecutar una aplicación sencilla

Para que te hagas una idea de cada opción, vamos a ver cómo se instala una sencilla aplicación web utilizando OrbStack, Lima y Docker Desktop.

OrbStack

Instalación: Descarga el instalador de OrbStack o utiliza Homebrew y simplemente ejecuta:

brew install orbstack

Ejecutar un contenedor: Una vez instalado, abre tu terminal y ejecuta el siguiente comando para iniciar un servidor web Nginx en un contenedor (container):

orbstack run -d -p 80:80 nginx:latest

Acceder a tu aplicación: Abre tu navegador web y navega hasta http://localhost. Deberías ver la página de bienvenida predeterminada de Nginx.

open http://localhost

Lima

Instalar L¡ima es tan fácil como:

brew install --require-sha lima

Crear una instancia de Lima: Crea una instancia de Lima con Docker preinstalado:

limactl start --name=my-lima-instance template://docker

Ejecutar un contenedor: Ahora puedes ejecutar comandos de Docker como siempre:

docker run -d -p 80:80 nginx:latest

Acceder a tu aplicación: Dado que Lima se ejecuta en una máquina virtual, tendrás que encontrar su dirección IP para acceder a tu aplicación. Para encontrar la dirección IP de  my-lima-instance

limactl list

# y luego ábrela en tu navegador web

open http://$my-lima-instance-ip

Docker Desktop

Instalación: Descarga el instalador de Docker Desktop desde el sitio web de Docker y sigue las instrucciones de instalación.

Ejecutar un contenedor: Abre tu terminal y ejecuta el siguiente comando:

docker run -d -p 80:80 nginx:latest

Acceder a tu aplicación: Abre tu navegador web y navega hasta http://localhost. Deberías ver la página de bienvenida de Nginx.

Ecosistema y comunidad

El mundo de los contenedores (containers) está en constante evolución, con nuevas herramientas y tecnologías que surgen todo el tiempo. Aunque este artículo se ha centrado en OrbStack, Lima y Docker Desktop, merece la pena explorar otras opciones como Rancher Desktop y Podman para encontrar la que mejor se adapte a tus necesidades de desarrollo.

La clave está en experimentar, probar diferentes herramientas y elegir la que te permita construir, enviar y ejecutar tus aplicaciones con facilidad y eficiencia.

Mención especial: Podman Desktop

Bueno, siempre hay otra opción, ¿verdad? Podman Desktop también funciona muy bien en macOS, lee más:

Podman Desktop: Your Gateway to Containers and Kubernetes
TL;DR 😴 Podman Desktop is an open-source, cross-platform graphical tool designed to make working with containers and Kubernetes on your local machine a breeze. It provides a user-friendly interface for building, running, managing, inspecting, and debugging containers, as well as interacting with Kubernetes deployments. Podman Desktop is a powerful yet

Enlaces

OrbStack · Fast, light, simple Docker & Linux on macOS
Say goodbye to slow, clunky containers and VMs. The fast, light, and easy way to run containers and Linux. Develop at lightspeed with our Docker Desktop alternative.
Lima: The Easiest Way to Run any Linux Distro, Kubernetes, k3s and even Docker on macOS and Linux, Apple Silicon (M1/ARM64) compatible
Lima is a versatile and user-friendly command line tool (CLI) that empowers you to seamlessly run Linux virtual machines (VMs) on your macOS or Linux system. It’s compatible with any Apple Silicon Mac (M1, M2, etc) ARM64 and Intel x86_64 processors, vice versa, without anything else than a single
Docker Desktop: The #1 Containerization Tool for Developers | Docker
Docker Desktop is collaborative containerization software for developers. Get started and download Docker Desktop today on Mac, Windows, or Linux.

Comment using your social account:

You will be asked to grant read-only access to your public profile and email address only to verify your identity. We will never post to your account. Select your preferred social account to get started.
Service provided by Spectral Web Services.

  |

Read interesting articles in SREDevOps.org:

Whonix: An Operating System for DevSecOps, Researchers and Paranoids like you and me

Whonix: An Operating System for DevSecOps, Researchers and Paranoids like you and me

Ah, privacy. That mythical beast we all chase in this digital jungle. You think incognito mode is enough? Honey, please. Your ISP knows what you had for breakfast, and they're judging. But fear not, my friend, for there's a solution for the truly paranoid: Whonix. Whonix

DevOps Paradox: OpenTelemetry meets Mobile

DevOps Paradox: OpenTelemetry meets Mobile

OpenTelemetry is transforming the landscape of mobile app observability, providing developers with powerful tools to monitor, understand, and optimize their applications. Embrace, with its open-source SDKs and commitment to community involvement, is at the forefront of this exciting evolution. This episode of DevOps Paradox features Austin Alexander from Embrace (https:

How to fix the Critical 9.9 CVE Linux Vulnerability in CUPS: A Step-by-Step Guide

How to fix the Critical 9.9 CVE Linux Vulnerability in CUPS: A Step-by-Step Guide

Oh No! Not My Printers! Exploiting CUPS on Linux: A How-to Guide (Just Kidding, Please Patch Your Systems) Remember those carefree days when the most terrifying thing about printers was running out of ink at 3 AM just before a big deadline? Yeah, me neither. But hold onto your coffee

Linux could be facing a critical RCE vulnerability, scoring 9.9 (CVE): Let's separate hype, security, facts, and developer drama

Linux could be facing a critical RCE vulnerability, scoring 9.9 (CVE): Let's separate hype, security, facts, and developer drama

The Linux community is abuzz with news of a potential Remote Code Execution (RCE) vulnerability, sending chills down the spines of sysadmins and prompting frantic security checks. But hold on to your penguins, because things are a bit more complicated than they appear. UPDATE 29-09-2024: How to fix the Critical