Oxcart Baixar
Menu

Mude do Docker Desktop ou OrbStack para o Oxcart

Mudar para o Oxcart leva alguns minutos: instale-o, execute docker context use oxcart e transfira as imagens e os volumes que deseja manter com docker save, docker load e um arquivo tar. O Oxcart pode ser instalado junto com o Docker Desktop ou OrbStack, pede permissão antes de substituir suas ferramentas docker e permite voltar com um comando.

Atualizado

Antes de começar

  • Um Mac com Apple silicon e macOS 26 ou posterior.
  • O outro app em execução, para que seu contexto responda enquanto você copia imagens e volumes.
  • Uma lista do que você realmente precisa: imagens que não pode baixar novamente e volumes nomeados com dados (bancos de dados, uploads). Todo o resto é mais rápido recriar.
  • Comece testando um projeto Compose representativo. Verifique se os serviços iniciam, se os dados estão presentes e se as portas publicadas respondem antes de mover o restante.

Migre para o Oxcart, passo a passo

  1. Instale o Oxcart. Baixe o Oxcart (Apple silicon, macOS 26 ou posterior) e abra-o. A configuração funciona offline e leva segundos; pede uma senha de administrador para o auxiliar que cria os links das ferramentas de linha de comando.
  2. Decida sobre as ferramentas docker. Se o Docker Desktop ou OrbStack instalou o docker, o Oxcart lista cada ferramenta com ambas as versões e pergunta antes de substituí-la. Replace vem ativado; Uninstall restaura as ferramentas do outro app.
  3. Selecione o contexto oxcart. A configuração cria um contexto Docker oxcart. Ele só se torna o contexto atual se o contexto atual for default e nada responder nele. Por isso, após usar outro app, normalmente você executa docker context use oxcart por conta própria.
  4. Transfira as imagens necessárias. Baixe-as novamente ou transfira-as diretamente do outro app com docker save para docker load, preservando tags e digests.
  5. Mova os volumes que contêm dados. Empacote cada volume nomeado em um arquivo tar usando um pequeno contêiner no outro app e depois extraia-o para um novo volume no Oxcart.
  6. Inicie seus projetos Compose. Execute docker compose up -d --wait na pasta de cada projeto. Os volumes transferidos com o mesmo nome serão usados.
  7. Aponte para o Oxcart as ferramentas com conexão fixa. Ferramentas que seguem o contexto Docker encontram o Oxcart sozinhas. Uma ferramenta que só lê DOCKER_HOST precisa que essa variável aponte para o endpoint do contexto oxcart.

Os comandos

Encontre os contextos e alterne

docker context ls

A lista mostra o contexto oxcart e o do outro app, com um asterisco no contexto atual. Depois:

docker context use oxcart

Copie imagens do outro app

Transfira as imagens diretamente de um mecanismo para o outro, sem arquivo intermediário. Tags e digests são preservados.

# 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 as imagens com tags de uma vez:

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

Imagens criadas a partir de um Dockerfile costumam ser mais rápidas de reconstruir no Oxcart com docker build ou docker compose build; reconstruções com cache levaram 121 ms no nosso benchmark.

Mova um volume nomeado

Este exemplo move um volume Postgres chamado pgdata. Ele grava um arquivo tar em uma pasta dentro da sua pasta pessoal: o Oxcart compartilha a pasta pessoal com os contêineres por padrão, e o outro app também precisa conseguir montá-la por bind mount. Pare antes os contêineres que usam o volume, para que a cópia seja consistente.

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

O Compose nomeia volumes como <project>_<volume>. Crie o volume no Oxcart com o mesmo nome completo (consulte docker volume ls no outro contexto) e o Compose o usará.

Inicie seus projetos Compose

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

Dependências de healthcheck, up --wait, DNS por nome de serviço, init: true e network_mode: service: funcionam como antes. Consulte Docker Compose no Apple silicon.

Ferramentas que leem DOCKER_HOST

O Oxcart nunca cria nem substitui /var/run/docker.sock; a CLI docker, o Compose, o Buildx e a maioria dos SDKs seguem o contexto atual. Se uma ferramenta só lê DOCKER_HOST, aponte-a para o Oxcart:

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

Dentro dos contêineres, montar /var/run/docker.sock funciona normalmente com Testcontainers, docker-outside-of-docker, Portainer e Traefik. Consulte Dev Containers e Testcontainers no Mac.

Volte ao app anterior

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

O que muda para você após a migração

Medido em um Mac com Apple silicon; medianas, menor é melhor
OperaçãoOxcart 0.1.2OrbStack 2.2.3Docker Desktop 4.94.0
docker run --rm … true42.3 ms220 ms143 ms
docker stop19.2 ms107 ms128 ms
Parar e remover 20 contêineres76.7 ms1,224 ms683 ms
Compilação com cache121 ms283 ms149 ms

Oxcart 0.1.2 medido em 2026-10-10 com o cliente docker 29.9 incluído; OrbStack 2.2.3 e Docker Desktop 4.94.0 medidos mais cedo no mesmo dia, no mesmo Mac e com a mesma estrutura de testes, usando docker 29.4. Tabelas completas: comparação com Docker Desktop e comparação com OrbStack.

Você também tem um servidor MCP local para agentes de programação (configure com uma única colagem), portas agrupadas por repositório e branch, e tráfego dos contêineres que segue suas regras de VPN, DNS e firewall (guia de redes).

Perguntas

Preciso desinstalar o Docker Desktop ou OrbStack antes?

Não. O Oxcart é instalado junto com eles e tem seu próprio contexto Docker oxcart. Alterne com docker context use. Mantenha o outro app instalado até mover tudo de que precisa.

O Oxcart muda meu contexto Docker atual?

Só se o contexto atual for default e nada responder nele. Se o contexto atual for de outro app, o Oxcart o mantém e você escolhe com docker context use oxcart.

Minhas imagens e meus volumes são transferidos automaticamente?

Não. Cada app mantém suas próprias imagens e volumes. Baixe as imagens novamente ou transfira-as com docker save | docker load; mova volumes nomeados com dados usando um arquivo tar, como mostrado acima. Volumes com caches ou outros dados descartáveis podem simplesmente ser recriados.

O que acontece com meus logins nos registros?

Se um download pedir credenciais, execute docker login uma vez. O Oxcart armazena a senha nas Chaves do macOS usando docker-credential-osxkeychain; o config.json mantém apenas o nome do registro.

Posso manter meu fluxo de desenvolvimento atual?

Sim. Continue usando a CLI docker, Compose, Buildx, Dev Containers e Testcontainers. O Oxcart oferece suporte a contêineres privilegiados, incluindo privileged: true no Compose. Mova primeiro um projeto, verifique suas portas e seus dados e migre os demais quando estiver pronto. Seu outro contexto Docker permanece disponível durante todo o processo.

As atualizações preservam meus contêineres?

Sim. Uma atualização do Oxcart preserva todos os contêineres, imagens, volumes e redes.

Como volto?

Execute docker context use com o nome do contexto do outro app. Se desinstalar o Oxcart, Uninstall restaura todas as ferramentas docker que ele substituiu.

Fontes e método

  • Configuração, ferramentas de linha de comando e contexto Docker: Oxcart 0.1.3 conforme distribuído.
  • Compatibilidade: testada no Oxcart em 2026-10-10 (save e load preservando tags e digests, Compose, socket Docker em contêineres).
  • Benchmarks: Oxcart 0.1.2, OrbStack 2.2.3 e Docker Desktop 4.94.0, medidos em 2026-10-10 em um Apple M5 Max, com 8 CPUs e 12 GB para cada um, um produto por vez, medianas de cinco amostras.
  • Os nomes dos contextos dos outros apps variam conforme o app e a versão: consulte docker context ls.

Experimente Oxcart nos seus projetos

Grátis por 60 dias. Depois, $20 por usuário, por versão principal: sem assinatura.

Apple silicon · macOS 26 ou posterior

Leia a seguir

Notas da versão

Oxcart 0.1.4

Versão mais recente

Licenciamento e melhorias.

  • Ativação da licença por link seguro enviado por e-mail.
  • Gerenciamento de licenças e Macs a partir de Settings.
  • Verificação de licenças offline.
  • Melhorias de desempenho, ajustes na interface e correções de bugs.

Requer macOS 26.0 ou posterior

Oxcart 0.1.3

Liberação de memória durante a inatividade.

  • Libera a memória da VM quando nenhum contêiner está em execução.
  • Preserva contêineres, imagens, volumes e redes.

Requer macOS 26.0 ou posterior

Oxcart 0.1.2

Integração de ferramentas de linha de comando.

  • Alterne entre as ferramentas Docker incluídas no Oxcart e uma instalação existente.
  • Ajustes na interface.

Requer macOS 26.0 ou posterior

Oxcart 0.1.1

Ferramentas Docker incluídas e controles para agentes.

  • Docker CLI 29.9, Compose 5.6 e Buildx 0.38 incluídos.
  • Integração com contextos Docker e credenciais protegidas no Acesso às Chaves.
  • Conexões de agentes via MCP com permissões e bloqueio por agente.

Requer macOS 26.0 ou posterior

Oxcart 0.1.0

Contêineres compatíveis com Docker para Apple silicon.

  • Compatibilidade com Docker CLI, Compose e Buildx.
  • Configuração offline com os componentes de execução incluídos.
  • Portas organizadas por projeto e branch do Git.
  • Integração MCP com acesso somente leitura por padrão.
  • Atualizações automáticas verificadas.

Requer macOS 26.0 ou posterior