Skip to content

Instalação

Este guia detalha o processo de instalação e configuração inicial do ArqSystem.

Requisitos do Sistema

Software Necessário

  • Node.js: Versão 24 ou superior
  • pnpm: Gerenciador de pacotes (recomendado)
  • Docker: Para serviços de infraestrutura
  • PostgreSQL: Banco de dados principal
  • Redis: Fila de processamento background

Requisitos de Hardware

  • Memória RAM: Mínimo 4GB (recomendado 8GB)
  • Espaço em Disco: Mínimo 10GB livres
  • Processador: Dual-core ou superior

Instalação com Docker

A forma mais rápida de iniciar o sistema é usando Docker Compose.

1. Clone o Repositório

bash
git clone https://github.com/giovanifranz/arq-system.git
cd arq-system

2. Configure as Variáveis de Ambiente

Copie o arquivo de exemplo e configure as variáveis:

bash
cp .env.example .env

Edite o arquivo .env com suas configurações:

env
# Database
DATABASE_URL="postgresql://user:password@localhost:5432/arqsystem"

# Sonic Search
SONIC_HOST=localhost
SONIC_PORT=1491
SONIC_PASSWORD=SecretPassword

# Storage (Cloudflare R2)
R2_ACCOUNT_ID=your-account-id
R2_ACCESS_KEY_ID=your-access-key
R2_SECRET_ACCESS_KEY=your-secret-key
R2_BUCKET_NAME=arqsystem-storage

# Authentication
NEXTAUTH_SECRET=your-secret-key-here
NEXTAUTH_URL=http://localhost:3000

3. Inicie os Serviços

bash
docker-compose up -d

Isso iniciará os seguintes serviços:

  • PostgreSQL: Banco de dados (porta 5432)
  • Redis: Fila de jobs (porta 6379)
  • Sonic: Motor de busca (porta 1491)

4. Instale as Dependências

bash
pnpm install

5. Execute as Migrações

bash
cd packages/db
pnpm prisma migrate deploy
pnpm prisma generate

6. Popule o Banco de Dados

Execute o script de seed para criar dados iniciais:

bash
pnpm db:seed

Isso criará:

  • Campos do sistema obrigatórios
  • Tipos de documento padrão
  • Níveis de órgãos vinculados
  • Órgãos governamentais padrão

7. Inicie o Servidor

bash
pnpm dev

O sistema estará disponível em:

Instalação Manual (sem Docker)

1. Instale o PostgreSQL

bash
# Ubuntu/Debian
sudo apt update
sudo apt install postgresql postgresql-contrib

# macOS (via Homebrew)
brew install postgresql
brew services start postgresql

2. Instale o Redis

bash
# Ubuntu/Debian
sudo apt install redis-server
sudo systemctl start redis

# macOS (via Homebrew)
brew install redis
brew services start redis

3. Instale o Sonic

bash
# Download e instalação do Sonic
curl -L https://github.com/valeriansaliou/sonic/releases/download/v1.4.9/sonic-v1.4.9-x86_64-unknown-linux-gnu.tar.gz -o sonic.tar.gz
tar -xzf sonic.tar.gz
cd sonic
./sonic -c config.cfg

4. Configure o Banco de Dados

bash
# Crie o banco de dados
psql -U postgres
CREATE DATABASE arqsystem;
CREATE USER arquser WITH ENCRYPTED PASSWORD 'password';
GRANT ALL PRIVILEGES ON DATABASE arqsystem TO arquser;
\q

5. Siga os Passos 2-7 da Instalação com Docker

Verificação da Instalação

Verifique os Serviços

bash
# PostgreSQL
psql -U arquser -d arqsystem -c "SELECT version();"

# Redis
redis-cli ping
# Deve retornar: PONG

# Sonic
echo "PING" | nc localhost 1491
# Deve retornar: PONG

Teste o Sistema

  1. Acesse http://localhost:3000
  2. Crie um usuário administrador
  3. Faça login no sistema
  4. Acesse a dashboard

Primeiro Acesso

Criar Usuário Administrador

No primeiro acesso, você precisará criar um usuário administrador:

  1. Acesse /auth/signup
  2. Preencha os dados:
    • Nome completo
    • Email
    • Senha (mínimo 8 caracteres)
  3. Clique em "Criar Conta"

O primeiro usuário criado automaticamente recebe permissões de SUPER usuário.

Próximos Passos

Após a instalação, recomendamos:

  1. Configurar os parâmetros do sistema
  2. Configurar tipos de documento
  3. Configurar níveis de acesso
  4. Testar o upload de PDFs

Solução de Problemas

PostgreSQL não conecta

bash
# Verifique se o serviço está rodando
sudo systemctl status postgresql

# Verifique as configurações de conexão
cat /etc/postgresql/*/main/pg_hba.conf

Redis não inicia

bash
# Verifique os logs
sudo journalctl -u redis -n 50

# Reinicie o serviço
sudo systemctl restart redis

Sonic não conecta

bash
# Verifique se a porta está aberta
netstat -tulpn | grep 1491

# Verifique as configurações
cat sonic/config.cfg

Erros de Migração

bash
# Resete o banco de dados (CUIDADO: apaga todos os dados)
cd packages/db
pnpm prisma migrate reset

# Aplique as migrações novamente
pnpm prisma migrate deploy

Atualização

Para atualizar o sistema para uma nova versão:

bash
# Pare os serviços
docker-compose down

# Atualize o código
git pull origin main

# Instale novas dependências
pnpm install

# Execute novas migrações
cd packages/db
pnpm prisma migrate deploy
pnpm prisma generate

# Reinicie os serviços
docker-compose up -d
pnpm dev

Próxima Etapa

Continue para Configuração para configurar o sistema.

Sistema de Gestão de Arquivos Digitais