# Vim - Servidor de Produção Este repositório contém a documentação técnica e os guias de operação para o servidor Vim, uma VPS dedicada ao deployment de aplicações utilizando a plataforma Dokku. ## Visão Geral O servidor Vim é uma infraestrutura de produção que hospeda múltiplas aplicações web, seguindo uma arquitetura baseada em contêineres. A plataforma Dokku serve como camada de gerenciamento de aplicações, similar a um Heroku self-hosted, permitindo deploys rápidos através de Git pushes. O Nginx atua como proxy reverso, roteando o tráfego baseado em domínios para as aplicações corretas. Este servidor complementa a infraestrutura existente do projeto Infracloud, que já inclui o servidor Apolo com Kubernetes (K3s). Enquanto o Apolo foi projetado para cargas de trabalho que se beneficiam de orquestração complexa e alta disponibilidade, o Vim foca em simplicidade e deploy rápido para aplicações que não necessitam de escala massiva. ## Especificações do Servidor | Recurso | Especificação | |---------|---------------| | **Plataforma** | VPS com Ubuntu/Debian | | **Orquestrador** | Dokku (PaaS self-hosted) | | **Container Runtime** | Docker | | **Proxy Reverso** | Nginx | | **Bancos de Dados** | PostgreSQL 17 e 18.1 (gerenciados) | | **Cache** | Redis | ## Projetos Hospedados O servidor Vim atualmente hospeda três projetos principais: - **GoHorse**: Ecossistema completo com backend, frontend, backoffice, seeder e jobs processor - **Sextando**: Plataforma com API e frontend separados - **Agno Orquestrador**: Serviço de orquestração dedicado ## Documentação A documentação completa está organizada nos seguintes arquivos: - [Arquitetura do Sistema](./architecture.md): Diagrama detalhado e descrição dos componentes - [Inventário de Serviços](./services_inventory.md): Tabela completa de apps, bancos, portas e domínios - [Guia de Deploy](./deployment_guide.md): Instruções passo a passo para deployment e manutenção ## Quick Start para Deploy ```bash # Adicionar remote Dokku git remote add dokku dokku@vim.rede5.com.br:nome-do-app # Fazer deploy git push dokku main:master ``` Consulte o [deployment_guide.md](./deployment_guide.md) para instruções detalhadas. ## Estrutura de Diretórios ``` vim/ ├── README.md # Este arquivo ├── architecture.md # Arquitetura detalhada do sistema ├── services_inventory.md # Inventário completo de serviços └── deployment_guide.md # Guia de deploy e manutenção ``` ## Boas Práticas Sempre siga estas práticas ao fazer deploy no servidor Vim: 1. **Variáveis de Ambiente**: Configure todas as variáveis necessárias antes do deploy 2. **Bancos de Dados**: Utilize os bancos existentes (postgres-main ou agno-db) ou crie novos conforme necessidade 3. **SSL**: Para domínios de produção, habilite HTTPS 4. **Logs**: Monitore os logs após cada deploy 5. **Testes**: Teste a aplicação em staging antes de fazer deploy em produção ## Suporte Para dúvidas ou problemas com deployment, consulte: 1. [deployment_guide.md](./deployment_guide.md) - Seção de troubleshooting 2. [services_inventory.md](./services_inventory.md) - Verificar configuração atual 3. Architecture - Entender como os componentes interagem