Delonix vs Docker vs Podman
Comparação honesta, para decidir com que motor construir — não um argumento de venda.
O Delonix Engine é um motor de containers e microVMs daemonless, rootless-first, em Rust, com Kubernetes de raiz (CRI próprio). Em vários pontos concretos já vai mais longe que o Docker e o Podman rootless. Noutros, fica muito atrás. Esta página diz exactamente onde é onde — para uma pessoa a decidir o que instalar hoje, ou uma empresa a avaliar para produção.
Estado actual (2026-07): beta público, em hardening activo. Várias rondas de auditoria
ofensiva já correram sobre o núcleo de syscalls do motor (clone/mount/
namespaces, ~104 blocos unsafe), a fronteira rootless→root, o socket de controlo, e o
código mais recente (rede/cluster/manifesto) — todos os achados CRÍTICOS e ALTOS encontrados
já estão corrigidos, e os de maior severidade (os 6 HIGH originais + os
CRITICAL/HIGH de rondas seguintes) foram re-confirmados por uma auditoria adversarial
INDEPENDENTE genuína (2026-07-26) — um TOCTOU adicional real foi encontrado nessa ronda
(kubeconfig com uma janela de permissões antes do chmod) e já está corrigido também.
Continuam por fechar ~27 achados de severidade MÉDIA/BAIXA (documentados, sem exploit conhecido).
Não há indícios de execução remota de código a partir da rede — a fronteira rootless→root está
sólida e já foi testada por um 2.º par de olhos — mas por prudência, um projecto sem anos
de produção continua a merecer cautela em produção multi-tenant com dados sensíveis.
Detalhe completo, com ficheiro e linha de cada achado e o estado da correcção:
relatório
da auditoria original e
análise
de gaps com o histórico completo das rondas seguintes.
Decisão rápida
| Se precisas de… | Usa |
|---|---|
Correr um docker-compose.yml já existente |
Delonix — delonix compose up, suporte nativo (Compose Spec v2.x),
sem Docker instalado |
| Um pipeline de build com BuildKit completo (cache mounts, SSH forwarding, cross-compile paralelo) | Docker ou Podman — o Delonix faz multi-stage, --mount=type=secret e cache de
camadas (rootless), mas não type=cache/type=ssh nem paralelismo de
estágios |
| Cargas GPU/CUDA | Delonix via CDI funciona (mesma fonte que Docker/Podman) mas nunca foi validado num host GPU real — para produção GPU hoje, prefere Docker/Podman |
docker version/ps/images/info e o
ciclo de vida completo de um container via DOCKER_HOST |
Delonix — delonix serve docker-api, validado contra um
docker CLI real, incl. docker compose up apontado ao socket |
docker exec/attach interactivo via a API, ou --restart via a API |
Docker ou Podman — deliberadamente fora de escopo (hijacking HTTP / modelo de supervisor incompatível com um servidor multi-thread) |
| Bootstrap de um cluster Kubernetes real sem instalar Docker/containerd | Delonix — CRI próprio, já validado com um control-plane v1.34 Ready |
| Um só motor para containers e microVMs e Kubernetes | Delonix — ninguém no espaço Docker/Podman cobre isto junto |
| Trocar portas/volumes/redes de um container a quente, sem o recriar | Delonix — o Docker obriga a recriar |
| Rede rootless avançada (overlay cifrado entre nós, firewall dirigido por container) | Delonix — acima do Podman rootless nestes pontos |
| Um motor com anos de produção, comunidade enorme, máxima compatibilidade de ferramentas | Docker ou Podman — ainda sem substituto à vista |
Comparação por área
forte · parcial ou com limitações · ausente
| Área | Docker | Podman | Delonix |
|---|---|---|---|
| Correr/parar/inspeccionar containers | forte | forte | forte — mais reconfiguração a quente e diagnóstico automático de crash (razão + snapshot do log, não só "Exited") |
| Rootless por omissão | não é o modo por omissão | forte, é a proposta do Podman | forte — e falha de propósito se o isolamento não ficar activo |
Build de imagens (Dockerfile) |
forte — multi-stage, BuildKit, cache | forte — via buildah | multi-stage + ARG/USER/ENTRYPOINT + --mount=type=secret +
cache de camadas (rootless) já funcionam; sem type=cache/type=ssh nem
paralelismo de estágios do BuildKit real |
docker compose / orquestração local |
nativo | podman-compose | nativo (delonix compose), sem Docker — depends_on
com healthcheck real |
API compatível com DOCKER_HOST |
é a própria | compatível | ciclo de vida completo do container (create/start/stop/kill/wait/
restart/rename/rm); sem exec/attach interactivo nem --restart |
| Rede rootless avançada (overlay inter-nó, firewall por-container) | overlay exige swarm | sem overlay rootless nativo | VXLAN+WireGuard rootless, firewall dirigido por container |
| Bootstrap de Kubernetes sem Docker/containerd | não é o papel do Docker | não tem CRI próprio | CRI próprio + cluster kubeadm, validado com cluster real |
| MicroVMs no mesmo motor | ausente | ausente | Cloud Hypervisor / libvirt, declarativo |
| GPU/CUDA | nvidia-container-toolkit maduro | idem | via CDI (a mesma fonte que Docker/Podman consomem), mas nunca validado num host GPU real |
| Assinatura de imagens + scan de CVE embutidos | precisa de cosign/trivy à parte | idem | cosign/sigstore + scan de CVE no próprio motor |
| Maturidade de segurança EM PRODUÇÃO (anos de uso adversarial real) | muito madura | muito madura | projecto novo — auditoria própria já encontrou e corrigiu falhas altas, ainda sem confirmação independente, ver aviso acima |
| Ecossistema (docs, fóruns, integrações de terceiros) | enorme | grande | início — este site + o repositório é tudo o que há por agora |
Onde o Delonix já vai mais longe
- Um motor só, três problemas — containers, microVMs e Kubernetes (via CRI
próprio) na mesma ferramenta. Já correu um control-plane Kubernetes v1.34 completo
Ready, com o própriokube-proxya programar netfilter dentro do modelo rootless. - Reconfiguração a quente — mudar portas, volumes, redes ou limite de banda de um container sem o recriar e com o mesmo PID. No Docker, mudar uma porta obriga a apagar e recriar o container.
- Diagnóstico automático de crash — quando um container morre inesperadamente, o Delonix regista a razão (processo desapareceu vs PID reciclado) e guarda um excerto do log automaticamente. Docker e Podman só dizem "Exited"/"Dead".
- Segurança rootless mais rígida por desenho — no-new-privs sempre activo, e o arranque de um container falha se seccomp/capabilities não ficarem mesmo a valer, em vez de seguir em frente a fingir que está protegido.
- Storage de rede estilo Kubernetes — uma pasta NFS/CIFS/WebDAV vira um volume
nomeado montável por qualquer container, como um
PersistentVolume. docker-compose.ymlnativo, sem Docker —delonix compose up/down/ps/logs, comdepends_ona esperar por um healthcheck real, não só por ordem declarada.
Onde ainda não chega
- Build de imagens ainda não tem BuildKit real — multi-stage,
ARG/--build-arg,USER/ENTRYPOINT,--mount=type=secrete cache de camadas (rootless) já funcionam, mas semtype=cache/type=sshnem paralelismo de estágios. - GPU nunca validado num host real — o caminho CDI existe e usa a mesma fonte que Docker/Podman consomem, mas sem um host com GPU não há confirmação ao vivo.
docker exec/attach interactivo e--restartvia a API — deliberadamente fora de escopo (hijacking HTTP / modelo de supervisor incompatível com um servidor multi-thread).compose: cobertura da spec ainda parcial — semprofiles/extends/configs/secretstop-level, multi-ficheiro,build.target,deploy.replicas != 1, IP fixo por rede, ou volumes anónimos.- Projecto novo — sem o histórico de produção que o Docker e o Podman têm; ver o aviso de segurança no topo desta página antes de decidir.
Recomendação por perfil
| Quem és | Sugestão |
|---|---|
| Programador(a) a experimentar em local/homelab, ou a fazer bootstrap de um cluster Kubernetes pequeno sem instalar Docker | Experimenta o Delonix hoje — é exactamente o caso em que já está forte. |
Equipa com um pipeline de build maduro que precisa de --mount=type=cache/
type=ssh ou paralelismo de estágios |
Fica no Docker/Podman para esse build específico; podes correr as imagens resultantes no
Delonix se quiseres testar a operação — docker-compose.yml, multi-stage e
--mount=type=secret já funcionam (rootless). |
| Empresa a avaliar para produção multi-tenant ou com dados sensíveis | Os achados de severidade CRÍTICA/ALTA já estão corrigidos e re-confirmados por uma auditoria independente (aviso acima); ainda faltam ~27 achados MÉDIO/BAIXO documentados (sem exploit conhecido) e o histórico de produção que só o tempo dá — acompanha o changelog. |
| Quer avaliar tecnicamente ao detalhe (gap-a-gap, com ficheiro e linha) | Lê a análise de gaps completa no repositório. |