Instalação
Há várias formas de instalar o Databasus: script automatizado (recomendado), docker run simples, Docker Compose, Helm para Kubernetes ou Docker Compose com Caddy para produção.
Requisitos de sistema
O Databasus precisa dos seguintes recursos mínimos para funcionar corretamente:
- CPU: pelo menos 1 núcleo de CPU
- RAM: mínimo de 500 MB de RAM
- Armazenamento: 5 GB para a instalação, mais o espaço de que precisar para os backups
- Docker: Docker Engine 20.10+ e Docker Compose v2.0+
Opção 1: script de instalação (recomendado, apenas Linux)
O script de instalação vai:
- ✅ Instalar o Docker com Docker Compose (se ainda não estiverem instalados)
- ✅ Configurar o Databasus
- ✅ Ativar a inicialização automática após reiniciar o sistema
sudo apt-get install -y curl && \
sudo curl -sSL https://raw.githubusercontent.com/databasus/databasus/refs/heads/main/install-databasus.sh | sudo bashNeste caso, o Databasus é instalado no diretório /opt/databasus.
Opção 2: docker run simples
A forma mais fácil de executar o Databasus:
docker run -d \
--name databasus \
-p 4005:4005 \
-v ./databasus-data:/databasus-data \
--restart unless-stopped \
databasus/databasus:latestEste único comando vai:
- ✅ Iniciar o Databasus
- ✅ Salvar todos os dados no diretório
./databasus-data - ✅ Reiniciar automaticamente após reiniciar o sistema
Opção 3: configuração com Docker Compose
Crie um arquivo docker-compose.yml com a seguinte configuração:
services:
databasus:
container_name: databasus
image: databasus/databasus:latest
ports:
- "4005:4005"
volumes:
- ./databasus-data:/databasus-data
restart: unless-stoppedDepois execute:
docker compose up -dObserve que a inicialização pode levar até ~2 minutos.
Opção 4: Kubernetes com Helm
Para implantações em Kubernetes, instale diretamente a partir do registro OCI. Escolha o método de acesso adequado ao seu ambiente.
Com ClusterIP + port-forward (desenvolvimento)
helm install databasus oci://ghcr.io/databasus/charts/databasus \
-n databasus --create-namespaceAcesso via port-forward:
kubectl port-forward svc/databasus-service 4005:4005 -n databasus
# Access at http://localhost:4005Com LoadBalancer (ambientes de nuvem)
helm install databasus oci://ghcr.io/databasus/charts/databasus \
-n databasus --create-namespace \
--set service.type=LoadBalancerObtenha o IP externo e acesse o Databasus:
kubectl get svc databasus-service -n databasus
# Access at http://<EXTERNAL-IP>:4005Com Ingress (acesso por domínio)
helm install databasus oci://ghcr.io/databasus/charts/databasus \
-n databasus --create-namespace \
--set ingress.enabled=true \
--set ingress.hosts[0].host=backup.example.comPara mais opções (NodePort, TLS, HTTPRoute para Gateway API), consulte a documentação do Helm chart.
Execução com reverse proxy Caddy
Para produção, você pode usar o Caddy como reverse proxy para ter certificados HTTPS automáticos e acesso seguro ao Databasus. Abaixo está uma configuração completa de Docker Compose com Caddy.
Docker Compose com Caddy
Crie um arquivo docker-compose.yml:
services:
databasus:
container_name: databasus
image: databasus/databasus:latest
volumes:
- ./databasus-data:/databasus-data
restart: unless-stopped
# No port exposed - Caddy handles external access
caddy:
container_name: caddy
image: caddy:latest
ports:
- "80:80"
- "443:443"
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile
- ./caddy-data:/data
- ./caddy-config:/config
restart: unless-stopped
depends_on:
- databasusCrie um Caddyfile no mesmo diretório:
backup.example.com {
reverse_proxy databasus:4005
}Depois inicie os serviços:
docker compose up -dEsta configuração oferece:
- ✅ HTTPS automático com certificados Let's Encrypt
- ✅ Redirecionamento de HTTP para HTTPS
- ✅ Reverse proxy para o Databasus
- ✅ Dados persistentes tanto do Caddy quanto do Databasus
Substitua backup.example.com pelo seu domínio real. Confirme que o DNS do domínio aponta para o endereço IP do seu servidor antes de iniciar os serviços.
Primeiros passos
Depois da instalação:
- Inicie e acesse o Databasus: suba o Databasus e abra
http://localhost:4005 - Crie a primeira tarefa de backup: clique em "New Backup" e configure a conexão com a sua base de dados PostgreSQL
- Configure o agendamento: defina a frequência dos backups (por hora, dia, semana, mês ou cron)
- Escolha o destino de armazenamento: indique onde salvar os backups (disco local, S3, Google Drive, etc.)
- Configure as notificações: adicione canais (Slack, Telegram, Discord) para receber alertas sobre o estado dos backups
- Comece a fazer backup: salve a configuração e acompanhe a execução do primeiro backup!
Health checks
Health check no Docker
Um health check embutido é ativado automaticamente para docker run e Docker Compose. O container é marcado como healthy assim que o Databasus começa a responder a requisições (após um curto período de inicialização). Ele verifica apenas se a aplicação responde, por isso o container não é reiniciado por condições não críticas, como pouco espaço em disco.
Endpoint de monitoramento / status
Para monitoramento de uptime e painéis de status:
GET http://<host>:4005/api/v1/system/healthRetorna 200 quando está tudo bem, ou 503 com o motivo quando algo precisa de atenção: base de dados interna, cache, uso de disco (acima de 95%), ferramentas cliente de base de dados, agendador de backups e atividade do agente de verificação. Sem autenticação, e o CORS está aberto para monitores baseados em navegador.
⚠️ Importante: serve apenas para monitoramento e alertas, não como liveness probe de container ou Kubernetes — retorna 503 em estados degradados mas funcionais (por exemplo, um disco quase cheio), o que reiniciaria um container que está funcionando.
Kubernetes
Use uma liveness/readiness probe que execute databasus healthcheck; reserve o endpoint /api/v1/system/health para monitoramento externo.
Como atualizar o Databasus?
Atualizar a instalação em Docker
Para atualizar o Databasus em execução via Docker, é preciso pará-lo, limpar o cache do Docker e reiniciar o container.
- Vá ao diretório onde o Databasus está instalado (normalmente
/opt/databasus) - Pare o container:
docker compose stop - Limpe o cache do Docker:
docker system prune -a - Reinicie o container:
docker compose up -d
Isso baixa a versão mais recente do Databasus do Docker Hub (se você não tiver fixado a versão no arquivo docker-compose.yml).
Atualizar a instalação via Helm
Para atualizar o Databasus em Kubernetes via Helm, use o comando upgrade:
helm upgrade databasus oci://ghcr.io/databasus/charts/databasus -n databasusSe tiver valores personalizados, adicione -f values.yaml ou use flags --set para preservar a sua configuração. O Helm faz uma atualização gradual (rolling update) para a nova versão.
Migrar do Postgresus
Databasus é o novo nome do Postgresus. Se você usa o Postgresus atualmente, pode continuar com ele ou migrar para o Databasus.
Importante: apenas renomear a imagem Docker não basta, porque o Postgresus e o Databasus usam pastas de dados e nomes de base de dados interna diferentes.
Para migrar:
- Pare o container do Postgresus:
docker compose stop - Instale o Databasus por qualquer um dos métodos acima (use um caminho de volume diferente,
./databasus-data) - Recrie manualmente as suas bases de dados, armazenamentos e notificadores no Databasus
Durante a migração, o Postgresus e o Databasus podem funcionar lado a lado, com portas e caminhos de volume diferentes.
Resolução de problemas
O container não inicia
Se o container não iniciar, verifique os logs:
docker logs databasusPorta já em uso
Se a porta 4005 já estiver em uso, você pode mudá-la no docker-compose.yml:
ports:
- "8080:4005" # Change 8080 to any available portErros de permissão
Se você encontrar problemas de permissões no diretório de dados:
sudo chown -R $USER:$USER ./databasus-data
chmod -R 755 ./databasus-data