Instalação
Esta seção detalha os passos para a instalação do DBizzie.
Visão Geral
O DBizzie é distribuído como containers Docker, facilitando a instalação e o gerenciamento. Todo o processo leva aproximadamente 10 minutos para ser concluído.
Pré-requisitos
Antes de começar, certifique-se de que todos os requisitos foram atendidos:
- Docker e Docker Compose instalados
- Conectividade de rede adequada
- Espaço em disco suficiente
Passos da Instalação
1. Preparar o Ambiente
Crie um diretório dedicado para o DBizzie:
mkdir dbizzie
cd dbizzie
2. Gerar Chave Secreta
Gere uma chave secreta para criptografia da aplicação:
docker run --rm dbizzie/dbizzie bin/rails secret
Guarde esta chave com segurança. Ela será necessária para manter os dados criptografados entre atualizações.
3. Configurar Variáveis de Ambiente
Crie o arquivo .env
com as configurações necessárias:
# .env
# Imagem Docker do DBizzie
APP_IMAGE=dbizzie/dbizzie:latest
# Configurações do Banco de Dados PostgreSQL
POSTGRES_USER=dbizzie
POSTGRES_PASSWORD=sua_senha_segura_aqui
POSTGRES_DB=dbizzie
# Chave secreta gerada no passo anterior
SECRET_KEY_BASE=sua_chave_secreta_aqui
# Configuração de Proxy (apenas se necessário)
PROXY=FALSE
Se o servidor não possuir conexão direta com a internet, configure:
PROXY=TRUE
E garanta que o acesso ao proxy.izzie-it.com
(IP: 168.138.253.210) esteja liberado nas portas 80 e 443.
4. Criar Arquivo Docker Compose
Crie o arquivo docker-compose.yml
com a configuração dos serviços:
# docker-compose.yml
name: dbizzie
version: '3.8'
services:
postgres:
image: postgres:17
container_name: dbizzie-postgres
restart: unless-stopped
environment:
POSTGRES_USER: ${POSTGRES_USER:-user}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-password}
POSTGRES_DB: ${POSTGRES_DB:-dbizzie}
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-user} -d ${POSTGRES_DB:-dbizzie}"]
interval: 10s
timeout: 5s
retries: 5
networks:
- dbizzie-network
redis:
image: redis:7
container_name: dbizzie-redis
restart: unless-stopped
volumes:
- redis_data:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
networks:
- dbizzie-network
manager:
image: ${APP_IMAGE:-dbizzie/dbizzie:latest}
container_name: dbizzie-manager
restart: unless-stopped
command: ./bin/manager
depends_on:
postgres:
condition: service_healthy
environment:
DATABASE_URL: postgres://${POSTGRES_USER:-dbizzie}:${POSTGRES_PASSWORD:-password}@postgres:5432/${POSTGRES_DB:-dbizzie}?sslmode=disable
PROXY: ${PROXY:-FALSE}
networks:
- dbizzie-network
web:
image: ${APP_IMAGE:-dbizzie/dbizzie:latest}
container_name: dbizzie-web
restart: unless-stopped
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
environment:
DATABASE_URL: postgres://${POSTGRES_USER:-dbizzie}:${POSTGRES_PASSWORD:-password}@postgres:5432/${POSTGRES_DB:-dbizzie}?sslmode=disable
REDIS_URL: redis://redis:6379/0
MANAGER_SERVICE_URL: http://manager:5000
SECRET_KEY_BASE: ${SECRET_KEY_BASE}
PROXY: ${PROXY:-FALSE}
ports:
- "4000:80"
- "4001:3000"
volumes:
- storage_data:/app/storage
networks:
- dbizzie-network
worker:
image: ${APP_IMAGE:-dbizzie/dbizzie:latest}
container_name: dbizzie-worker
restart: unless-stopped
command: ./bin/bundle exec sidekiq -C config/sidekiq.yml
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
environment:
DATABASE_URL: postgres://${POSTGRES_USER:-dbizzie}:${POSTGRES_PASSWORD:-password}@postgres:5432/${POSTGRES_DB:-dbizzie}?sslmode=disable
REDIS_URL: redis://redis:6379/0
MANAGER_SERVICE_URL: http://manager:5000
SECRET_KEY_BASE: ${SECRET_KEY_BASE}
PROXY: ${PROXY:-FALSE}
WORKER_CONCURRENCY: ${WORKER_CONCURRENCY:-10}
volumes:
- storage_data:/app/storage
networks:
- dbizzie-network
volumes:
postgres_data:
driver: local
redis_data:
driver: local
storage_data:
driver: local
networks:
dbizzie-network:
driver: bridge
5. Iniciar o DBizzie
Execute o comando para baixar as imagens e iniciar todos os serviços:
docker-compose up -d
Este comando irá:
- Baixar as imagens Docker necessárias
- Criar os containers dos serviços
- Configurar a rede interna
- Inicializar o banco de dados
- Iniciar todos os serviços
6. Verificar a Instalação
Aguarde alguns minutos para que todos os serviços sejam inicializados e verifique o status:
# Verificar status dos containers
docker-compose ps
# Acompanhar os logs de inicialização
docker-compose logs -f web
7. Acessar o DBizzie
Acesse o DBizzie através do navegador:
URL: http://localhost:4000
Na primeira vez, você será direcionado para a configuração inicial.
Comandos Úteis
Monitoramento
# Acompanhar logs em tempo real
docker-compose logs -f
# Logs de um serviço específico
docker-compose logs -f web
# Verificar status dos containers
docker-compose ps
# Verificar uso de recursos
docker stats
Gerenciamento
# Parar todos os serviços
docker-compose stop
# Reiniciar todos os serviços
docker-compose restart
# Reiniciar um serviço específico
docker-compose restart web
# Parar e remover containers (mantém dados)
docker-compose down
# Atualizar e reiniciar (após mudan ças no docker-compose.yml)
docker-compose up -d
Solução de Problemas
Container não inicia
# Verificar logs detalhados
docker-compose logs [nome_do_container]
# Verificar se as portas estão ocupadas
netstat -tulpn | grep :4000
Problemas de conectividade
# Testar conectividade com proxy (se aplicável)
curl -I http://proxy.izzie-it.com
# Verificar rede Docker
docker network ls
docker network inspect dbizzie_dbizzie-network
Reset completo (cuidado: apaga todos os dados)
# Parar e remover tudo
docker-compose down -v
# Remover imagens (opcional)
docker-compose down --rmi all
# Reiniciar do zero
docker-compose up -d
Próximos Passos
Após a instalação bem-sucedida:
- Configuração Inicial: Acesse a configuração inicial
- HTTPS: Configure HTTPS para produção
- Conexões: Configure as conexões com bancos Oracle