Oxcart Descargar
Menú

Cambiar de Docker Desktop u OrbStack a Oxcart

Cambiar a Oxcart lleva unos minutos: instálalo, ejecuta docker context use oxcart y transfiere las imágenes y los volúmenes que quieras conservar con docker save, docker load y un archivo tar. Oxcart se instala junto a Docker Desktop u OrbStack, pide permiso antes de sustituir sus herramientas docker y permite volver con un solo comando.

Actualizado

Antes de empezar

  • Un Mac con chip de Apple y macOS 26 o posterior.
  • La otra app en ejecución, para que su contexto responda mientras copias imágenes y volúmenes.
  • Una lista de lo que necesitas de verdad: imágenes que no puedes volver a descargar y volúmenes con nombre que contienen datos (bases de datos, archivos subidos). Todo lo demás se recrea más rápido.
  • Un proyecto Compose representativo para probar primero. Comprueba que sus servicios arrancan, que sus datos están presentes y que sus puertos publicados responden antes de trasladar el resto.

Cambiar a Oxcart, paso a paso

  1. Instala Oxcart. Descarga Oxcart (chip de Apple, macOS 26 o posterior) y ábrelo. La configuración se realiza sin conexión y tarda segundos; solicita una contraseña de administrador para el componente auxiliar que enlaza las herramientas de línea de comandos.
  2. Decide qué hacer con las herramientas docker. Si Docker Desktop u OrbStack instaló docker, Oxcart muestra cada herramienta con ambas versiones y pide permiso antes de sustituirla. Replace está activado de forma predeterminada; Uninstall restaura las herramientas de la otra app.
  3. Selecciona el contexto oxcart. La configuración crea un contexto Docker oxcart. Solo lo convierte en el contexto actual si este es default y nada responde en él, así que después de usar otra app normalmente debes ejecutar docker context use oxcart.
  4. Transfiere las imágenes que necesitas. Descárgalas de nuevo o transfiérelas directamente desde la otra app con docker save hacia docker load, que conserva las etiquetas y los digests.
  5. Traslada los volúmenes que contienen datos. Empaqueta cada volumen con nombre en un archivo tar mediante un contenedor pequeño en la otra app y después extráelo en un volumen nuevo de Oxcart.
  6. Inicia tus proyectos Compose. Ejecuta docker compose up -d --wait en la carpeta de cada proyecto. Se usarán los volúmenes que hayas trasladado con el mismo nombre.
  7. Dirige a Oxcart las herramientas con configuración fija. Las herramientas que siguen el contexto Docker encuentran Oxcart automáticamente. Si una herramienta solo lee DOCKER_HOST, debes establecer esa variable en el endpoint del contexto oxcart.

Los comandos

Buscar los contextos y cambiar

docker context ls

La lista muestra el contexto oxcart y el de la otra app, con un asterisco en el actual. Después:

docker context use oxcart

Copiar imágenes desde la otra app

Transfiere imágenes directamente de un motor al otro, sin un archivo intermedio. Se conservan las etiquetas y los digests.

# OTHER is the other app's context name from `docker context ls`
OTHER=<other-context>
docker --context "$OTHER" save postgres:17-alpine myapp:dev | docker --context oxcart load

Para transferir todas las imágenes etiquetadas de una vez:

docker --context "$OTHER" images --format '{{.Repository}}:{{.Tag}}' | grep -v '<none>' \
  | xargs docker --context "$OTHER" save | docker --context oxcart load

Las imágenes creadas a partir de un Dockerfile suelen recompilarse más rápido en Oxcart con docker build o docker compose build; las recompilaciones con caché tardaron 121 ms en nuestra prueba de rendimiento.

Trasladar un volumen con nombre

Este ejemplo traslada un volumen Postgres llamado pgdata. Escribe un archivo tar en una carpeta dentro de tu carpeta personal: Oxcart comparte tu carpeta personal con los contenedores de forma predeterminada, y la otra app también debe poder montarla mediante un bind mount. Detén primero los contenedores que usan el volumen para que la copia sea coherente.

mkdir -p ~/volume-move && cd ~/volume-move
# 1. Pack the volume in the other app
docker --context "$OTHER" run --rm -v pgdata:/from -v "$PWD":/backup alpine \
  tar -C /from -czf /backup/pgdata.tgz .
# 2. Unpack it into a new volume in Oxcart
docker --context oxcart volume create pgdata
docker --context oxcart run --rm -v pgdata:/to -v "$PWD":/backup alpine \
  tar -C /to -xzf /backup/pgdata.tgz

Compose asigna a los volúmenes nombres con el formato <project>_<volume>. Crea el volumen de Oxcart con el mismo nombre completo (consulta docker volume ls en el otro contexto) y Compose lo usará.

Iniciar tus proyectos Compose

cd ~/code/myproject
docker compose up -d --wait

Las dependencias de comprobaciones de salud, up --wait, DNS por nombre de servicio, init: true y network_mode: service: funcionan como antes. Consulta Docker Compose en equipos con chip de Apple.

Herramientas que leen DOCKER_HOST

Oxcart nunca crea ni sustituye /var/run/docker.sock; la CLI docker, Compose, Buildx y la mayoría de los SDK siguen el contexto actual. Si una herramienta solo lee DOCKER_HOST, dirígela a Oxcart:

export DOCKER_HOST="$(docker context inspect oxcart --format '{{.Endpoints.docker.Host}}')"

Dentro de los contenedores, montar /var/run/docker.sock funciona como siempre para Testcontainers, docker-outside-of-docker, Portainer y Traefik. Consulta Dev Containers y Testcontainers en Mac.

Volver al contexto anterior

docker context use <other-context>   # back to the other app
docker context use oxcart            # and to Oxcart again

Qué cambia para ti después de migrar

Medido en un Mac con chip de Apple; medianas, menos es mejor
OperaciónOxcart 0.1.2OrbStack 2.2.3Docker Desktop 4.94.0
docker run --rm … true42.3 ms220 ms143 ms
docker stop19.2 ms107 ms128 ms
Detener y eliminar 20 contenedores76.7 ms1,224 ms683 ms
Compilación con caché121 ms283 ms149 ms

Oxcart 0.1.2 medido el 2026-10-10 con su cliente docker 29.9 incluido; OrbStack 2.2.3 y Docker Desktop 4.94.0 medidos antes ese mismo día, en el mismo Mac y con el mismo sistema de medición, con docker 29.4. Tablas completas: frente a Docker Desktop y frente a OrbStack.

También dispones de un servidor MCP local para agentes de programación (configúralo con un solo pegado), puertos agrupados por repositorio y rama, y tráfico de contenedores que sigue tus reglas de VPN, DNS y firewall (guía de redes).

Preguntas

¿Debo desinstalar primero Docker Desktop u OrbStack?

No. Oxcart se instala junto a ellos con su propio contexto Docker oxcart. Cambia con docker context use. Mantén instalada la otra app hasta haber trasladado lo que necesitas.

¿Oxcart cambiará mi contexto Docker actual?

Solo si el contexto actual es default y nada responde en él. Si está seleccionado el contexto de otra app, Oxcart lo deja como está y tú eliges con docker context use oxcart.

¿Mis imágenes y volúmenes se transfieren automáticamente?

No. Cada app mantiene sus propias imágenes y volúmenes. Descarga las imágenes de nuevo o transfiérelas con docker save | docker load; traslada los volúmenes con nombre que contienen datos mediante un archivo tar, como se muestra arriba. Los volúmenes con cachés u otros datos desechables pueden recrearse sin más.

¿Qué ocurre con mis credenciales de los registros?

Si una descarga pide credenciales, ejecuta docker login una vez. Oxcart guarda la contraseña en el Llavero de macOS mediante docker-credential-osxkeychain; config.json solo conserva el nombre del registro.

¿Puedo mantener mi flujo de desarrollo actual?

Sí. Sigue usando la CLI docker, Compose, Buildx, Dev Containers y Testcontainers. Oxcart admite contenedores privilegiados, incluido privileged: true en Compose. Traslada primero un proyecto, comprueba sus puertos y datos y cambia el resto cuando estés listo. Tu otro contexto Docker seguirá disponible durante todo el proceso.

¿Las actualizaciones conservan mis contenedores?

Sí. Una actualización de Oxcart conserva todos los contenedores, imágenes, volúmenes y redes.

¿Cómo vuelvo al entorno anterior?

Ejecuta docker context use con el nombre del contexto de la otra app. Si desinstalas Oxcart, Uninstall restaura las herramientas docker que había sustituido.

Fuentes y método

  • Configuración, herramientas de línea de comandos y contexto Docker: Oxcart 0.1.3 tal como se distribuye.
  • Compatibilidad: probada en Oxcart el 2026-10-10 (guardado y carga conservando etiquetas y digests, Compose y socket Docker dentro de contenedores).
  • Pruebas de rendimiento: Oxcart 0.1.2, OrbStack 2.2.3 y Docker Desktop 4.94.0, medidos el 2026-10-10 en un Apple M5 Max, con 8 CPU y 12 GB cada uno, un producto a la vez, medianas de cinco muestras.
  • Los nombres de contexto de las otras apps varían según la app y la versión: consúltalos con docker context ls.

Prueba Oxcart con tus propios proyectos

Gratis durante 60 días. Después, $20 por persona y por versión principal, sin suscripción.

Apple silicon · macOS 26 o posterior

Sigue leyendo

Notas de la versión

Oxcart 0.1.4

Última versión

Licencias y mejoras.

  • Activación de licencias mediante un enlace seguro enviado por correo electrónico.
  • Gestión de licencias y Mac desde Settings.
  • Verificación de licencias sin conexión.
  • Mejoras de rendimiento, ajustes de la interfaz y correcciones de errores.

Requiere macOS 26.0 o posterior

Oxcart 0.1.3

Recuperación de memoria en reposo.

  • Recupera memoria de la VM cuando no hay contenedores en ejecución.
  • Conserva los contenedores, las imágenes, los volúmenes y las redes.

Requiere macOS 26.0 o posterior

Oxcart 0.1.2

Integración de herramientas de línea de comandos.

  • Alterna entre las herramientas Docker incluidas con Oxcart y una instalación existente.
  • Ajustes de la interfaz.

Requiere macOS 26.0 o posterior

Oxcart 0.1.1

Herramientas Docker incluidas y controles para agentes.

  • Docker CLI 29.9, Compose 5.6 y Buildx 0.38 incluidos.
  • Integración con contextos de Docker y credenciales seguras en el Llavero.
  • Conexiones de agentes MCP con permisos y bloqueo por agente.

Requiere macOS 26.0 o posterior

Oxcart 0.1.0

Contenedores compatibles con Docker para Apple silicon.

  • Compatibilidad con Docker CLI, Compose y Buildx.
  • Configuración sin conexión con los componentes de ejecución incluidos.
  • Puertos organizados por proyecto y rama de Git.
  • Integración MCP con acceso de solo lectura de forma predeterminada.
  • Actualizaciones automáticas verificadas.

Requiere macOS 26.0 o posterior