MinIO Community foi descontinuado: instale o Garage no Ubuntu
O MinIO Community Edition, o object storage S3-compatível mais usado em home lab e infraestrutura de pequenas e médias empresas, chegou ao fim. Desde outubro de 2025 a versão comunitária não recebe mais binários pré-compilados, em dezembro a empresa colocou o projeto em modo de manutenção e em 25 de abril de 2026 o repositório oficial no GitHub foi arquivado — read-only, sem mais commits. Quem ainda usa MinIO para backup ou storage interno precisa de um plano de saída, e o Garage, mantido pelo coletivo francês Deuxfleurs, é a alternativa mais direta para substituir.
O que exatamente mudou no MinIO
A mudança veio em três etapas. Em outubro de 2025 o MinIO parou de publicar binários e imagens Docker prontas para a edição community — a partir daí, instalar a versão livre passou a exigir compilar do código-fonte com go install github.com/minio/minio@latest. Poucas semanas depois o projeto entrou em modo de manutenção, sem novas features. A confirmação final veio em abril de 2026: o GitHub do minio/minio foi arquivado pelo próprio mantenedor, com uma nota recomendando migrar para o AIStor Free ou o AIStor Enterprise — os produtos comerciais da MinIO, Inc.
Isso não significa que os binários antigos parem de funcionar da noite para o dia. Significa que eles não recebem mais correção de segurança, e que qualquer ambiente novo depende de compilar em Go — uma barreira que a maioria dos times de infraestrutura não tem motivo para aceitar quando existe alternativa mais simples e ativamente mantida.
Por que isso importa para quem já usa MinIO em produção
Se o MinIO está rodando como storage de backup (como em fluxos de rclone + S3 ou como destino de vzdump no Proxmox), o risco não é o serviço parar — é ficar preso numa versão sem patch enquanto o AGPLv3 empurra qualquer uso comercial para a “própria conta e risco”, nas palavras do próprio README do projeto. Builds a partir do código-fonte em produção também não têm nenhuma garantia de suporte da MinIO, Inc. Trocar de object storage é trabalho, mas adiar a decisão só aumenta a distância entre a versão instalada e as correções que ela nunca mais vai receber.
Por que o Garage é a substituição mais direta
Existem várias alternativas de object storage self-hosted — Ceph com RGW, SeaweedFS, o próprio AIStor Free. Para o cenário mais comum do leitor deste site (um servidor único ou poucos nós, sem equipe dedicada de storage), o Garage se destaca por três motivos concretos:
- Binário único, sem dependência externa. Escrito em Rust, roda até em hardware modesto como um Raspberry Pi, sem runtime, sem driver de kernel.
- Licença permissiva. Apache 2.0, sem letra miúda equivalente ao AGPLv3 e sem edição “enterprise” escondendo funções básicas.
- Compatibilidade S3 real. Qualquer ferramenta que já fala com S3 —
aws s3,rclone,s3cmd, SDKs — funciona sem alteração, então a migração não exige trocar o resto do pipeline de backup.
O trade-off: o Garage assume um modelo de consistência mais fraco, pensado para clusters geodistribuídos. Para um único nó local isso não pesa, mas vale saber antes de escalar para múltiplos data centers.
Passo a passo: instalando o Garage no Ubuntu Server
Requisitos: Ubuntu 22.04 ou 24.04, no mínimo 1 GB de RAM (2 GB ou mais é o recomendado), e um volume de disco já montado para os dados.
1. Baixar o binário
wget https://garagehq.deuxfleurs.fr/_releases/v1.0.1/x86_64-unknown-linux-musl/garage -O /tmp/garage sudo mv /tmp/garage /usr/local/bin/garage sudo chmod +x /usr/local/bin/garage garage --version
2. Criar usuário de sistema e diretórios
Rodar o serviço com um usuário dedicado, sem shell e sem home, limita o estrago se o processo for comprometido.
sudo useradd --system --no-create-home --shell /bin/false garage sudo mkdir -p /data/garage/data /data/garage/meta /etc/garage sudo chown -R garage:garage /data/garage /etc/garage
3. Configurar o garage.toml
Gere primeiro um segredo aleatório para autenticação entre nós do cluster:
openssl rand -hex 32
Crie /etc/garage/garage.toml com o valor gerado no lugar de rpc_secret:
rpc_bind_addr = "0.0.0.0:3901" rpc_secret = "COLE_AQUI_O_HEX_GERADO" metadata_dir = "/data/garage/meta" data_dir = "/data/garage/data" [s3_api] api_bind_addr = "0.0.0.0:3900" s3_region = "us-east-1" [admin] api_bind_addr = "0.0.0.0:3903"
4. Criar o serviço systemd
O hardening abaixo (ProtectSystem=strict, NoNewPrivileges) restringe o processo ao diretório de dados — segue o mesmo princípio de mínimo privilégio que vale para qualquer serviço exposto em rede.
sudo tee /etc/systemd/system/garage.service > /dev/null << 'UNIT' [Unit] Description=Garage S3-compatible object storage After=network.target [Service] Type=simple User=garage Group=garage ExecStart=/usr/local/bin/garage -c /etc/garage/garage.toml server Restart=on-failure RestartSec=5 LimitNOFILE=65536 NoNewPrivileges=true PrivateTmp=true ProtectSystem=strict ReadWritePaths=/data/garage [Install] WantedBy=multi-user.target UNIT sudo systemctl daemon-reload sudo systemctl enable --now garage sudo systemctl status garage
5. Configurar o layout do cluster
Mesmo com um nó só, o Garage exige atribuir zona e capacidade antes de aceitar dados — é assim que ele calcula onde replicar cada objeto.
sudo -u garage garage -c /etc/garage/garage.toml node id # anote o ID (a parte antes do @) sudo -u garage garage -c /etc/garage/garage.toml layout assign NODE_ID --zone dc1 --capacity 100G sudo -u garage garage -c /etc/garage/garage.toml layout show sudo -u garage garage -c /etc/garage/garage.toml layout apply --version 1
6. Criar bucket e chave de acesso
sudo -u garage garage -c /etc/garage/garage.toml bucket create backups sudo -u garage garage -c /etc/garage/garage.toml key create backup-key sudo -u garage garage -c /etc/garage/garage.toml bucket allow backups --read --write --key backup-key
O comando key create imprime o Access Key ID e a Secret Key uma única vez — guarde os dois antes de sair do terminal.
7. Testar com a AWS CLI ou rclone
aws configure set aws_access_key_id GK... aws configure set aws_secret_access_key ... aws s3 cp /etc/hostname s3://backups/teste.txt --endpoint-url http://127.0.0.1:3900 aws s3 ls s3://backups/ --endpoint-url http://127.0.0.1:3900
8. Restringir o firewall
A porta 3900 (API S3) só deve ficar acessível para quem realmente envia backup; a porta 3901 (RPC entre nós) não precisa estar exposta num cluster de nó único.
sudo ufw allow from 10.0.0.0/8 to any port 3900 proto tcp sudo ufw allow from 192.168.1.0/24 to any port 3903 proto tcp
Migrando os dados que já estão no MinIO
Como os dois falam a mesma API S3, a migração é uma sincronização entre dois remotes do rclone, sem downtime forçado no destino:
rclone config create minio-antigo s3 provider Other access_key_id SEU_KEY_MINIO secret_access_key SEU_SECRET_MINIO endpoint http://IP_DO_MINIO:9000 rclone config create garage-novo s3 provider Other access_key_id SEU_KEY_GARAGE secret_access_key SEU_SECRET_GARAGE endpoint http://127.0.0.1:3900 rclone sync minio-antigo:bucket-antigo garage-novo:backups --progress
Rode a sincronização, aponte os jobs de backup para o novo endpoint, valide por uma semana com os dois ativos e só então desligue o MinIO.
Perguntas frequentes
O MinIO que já está instalado vai parar de funcionar?
Não imediatamente. O binário continua rodando, mas não recebe mais atualização de segurança nem correção de bug — é uma questão de tempo até uma CVE não corrigida se tornar um problema real.
Preciso migrar tudo de uma vez?
Não. O rclone sync é incremental: rode em paralelo com o MinIO por um período, valide a integridade e só depois aponte as aplicações e os jobs de backup para o Garage.
O Garage substitui o MinIO em cluster multi-nó?
Sim, e é justamente para isso que ele foi desenhado — geodistribuição e tolerância a falha de nó são o caso de uso principal do projeto, não um extra.
Dá para usar o Garage com o console web, como no MinIO?
O Garage não tem console gráfico embutido. Para navegar buckets visualmente é preciso um cliente S3 de terceiros (como o próprio rclone browse ou ferramentas como o Cyberduck).
O AIStor Free da MinIO não seria mais simples?
É uma opção, mas é um produto comercial da MinIO, Inc., com conta e termos próprios — não é uma continuação direta do projeto open source que foi arquivado.
Conclusão
O fim dos binários prontos do MinIO Community não é um detalhe: é o fim do ciclo de vida da versão que grande parte dos home labs e pequenas empresas roda hoje. Quem depende dele para backup ou storage interno ganha mais ao migrar com calma para uma alternativa mantida do que ao esperar uma CVE forçar a decisão. O Garage cobre o caso de uso mais comum — um ou poucos nós, sem equipe dedicada de storage — com uma instalação que cabe em uma tarde de trabalho.