Sobre o projeto

Uncloud é uma ferramenta leve de clustering e orquestração de contêineres projetada para implantar e gerenciar aplicações conteinerizadas em uma rede de hosts Docker, incluindo VMs em nuvem e servidores bare metal. Ela cria uma rede mesh WireGuard segura entre as máquinas, oferecendo descoberta automática de serviços, balanceamento de carga, ingress com HTTPS e uma CLI simples para gerenciamento. Diferentemente de orquestradores tradicionais como o Kubernetes, o Uncloud não possui plano de controle central nem quórum a manter. Cada máquina mantém uma cópia sincronizada do estado do cluster por meio de comunicação peer-to-peer, garantindo que as operações continuem mesmo se algumas máquinas ficarem offline. Esse design descentralizado reduz a sobrecarga operacional e elimina pontos únicos de falha. Os principais recursos incluem: - **Implantar em qualquer lugar**: Combine VMs em nuvem, servidores dedicados e bare metal em um ambiente unificado. - **Suporte a Docker Compose**: Use o formato Compose familiar para definir serviços e volumes. - **Implantações sem downtime**: Atualizações graduais sem interrupção do serviço. - **Integração com Unregistry**: Crie e envie imagens Docker diretamente para as máquinas sem um registry externo. - **Descoberta de serviços**: DNS integrado resolve nomes de serviços para IPs de contêineres. - **Armazenamento persistente**: Gerencie volumes Docker entre máquinas. - **Rede privada sem configuração**: Malha WireGuard automática com descoberta de peers e travessia de NAT. - **DNS gerenciado**: Registros DNS automáticos para serviços públicos via Uncloud DNS. - **HTTPS automático**: Proxy reverso Caddy integrado lida com certificados TLS. - **CLI similar ao Docker**: Comandos familiares para gerenciamento de infraestrutura e aplicações. - **Gerenciamento remoto**: Controle todo o cluster via SSH em qualquer máquina individual. O Uncloud visa preencher a lacuna entre Docker e Kubernetes, oferecendo uma solução pragmática para desenvolvedores que desejam infraestrutura auto-hospedada sem a complexidade do Kubernetes. Está em desenvolvimento ativo (pré-1.0) e depende de projetos amplamente testados como Docker, Caddy, WireGuard e Corrosion (um banco de dados SQLite distribuído baseado em CRDT). Tutoriais interativos e playgrounds estão disponíveis no iximiuz Labs, e receitas da comunidade estão no repositório uncloud-recipes. O projeto é inspirado por Kamal, Fly.io, Tailscale, Talos Linux e Docker Swarm Classic.