220 lines
4.1 KiB
Markdown
220 lines
4.1 KiB
Markdown
# 🚀 Deploy no Coolify - IAsis Website
|
|
|
|
## 📋 Pré-requisitos
|
|
|
|
- Coolify instalado e configurado
|
|
- Repositório Git com os arquivos do projeto
|
|
- Docker disponível no servidor
|
|
|
|
## 🔧 Configuração do Deploy
|
|
|
|
### 1. Configurações do Projeto no Coolify
|
|
|
|
```bash
|
|
# Configurações básicas
|
|
Nome do Projeto: iasis-website
|
|
Repositório: [seu-repositório-git]
|
|
Branch: main (ou master)
|
|
```
|
|
|
|
### 2. Configurações de Build
|
|
|
|
```bash
|
|
# Comando de build
|
|
npm install --legacy-peer-deps && npm run build
|
|
|
|
# Diretório de saída
|
|
dist
|
|
|
|
# Porta da aplicação
|
|
80
|
|
|
|
# Health check
|
|
/health
|
|
```
|
|
|
|
### 3. Variáveis de Ambiente
|
|
|
|
No painel do Coolify, adicione as seguintes variáveis:
|
|
|
|
```bash
|
|
NODE_ENV=production
|
|
VITE_APP_NAME=IAsis
|
|
VITE_APP_VERSION=1.0.0
|
|
```
|
|
|
|
### 4. Configurações de Domínio
|
|
|
|
```bash
|
|
# Domínio personalizado (opcional)
|
|
seu-dominio.com
|
|
|
|
# SSL
|
|
Automático via Let's Encrypt (recomendado)
|
|
```
|
|
|
|
## 📦 Processo de Deploy
|
|
|
|
### Método 1: Deploy Automático (Recomendado)
|
|
|
|
1. **Conecte o repositório** no Coolify
|
|
2. **Configure as variáveis** de ambiente
|
|
3. **Inicie o deploy** automático
|
|
4. **Coolify irá**:
|
|
- Clonar o repositório
|
|
- Executar o build com Docker
|
|
- Servir via Nginx
|
|
- Configurar SSL automaticamente
|
|
|
|
### Método 2: Deploy Manual
|
|
|
|
Se preferir fazer deploy manual:
|
|
|
|
```bash
|
|
# 1. Build local
|
|
npm install --legacy-peer-deps
|
|
npm run build
|
|
|
|
# 2. Build da imagem Docker
|
|
docker build -t iasis-website .
|
|
|
|
# 3. Upload para o Coolify
|
|
# (seguir instruções específicas do seu Coolify)
|
|
```
|
|
|
|
## 🔍 Verificação do Deploy
|
|
|
|
### Endpoints de Teste
|
|
|
|
```bash
|
|
# Health check
|
|
https://seu-dominio.com/health
|
|
|
|
# Página principal
|
|
https://seu-dominio.com/
|
|
|
|
# Login
|
|
https://seu-dominio.com/
|
|
# Credenciais: Admin / Iasis@2025
|
|
```
|
|
|
|
### Logs de Verificação
|
|
|
|
```bash
|
|
# Verificar logs do container
|
|
docker logs [container-id]
|
|
|
|
# Verificar logs do Nginx
|
|
docker exec [container-id] cat /var/log/nginx/access.log
|
|
docker exec [container-id] cat /var/log/nginx/error.log
|
|
```
|
|
|
|
## 🛠️ Troubleshooting
|
|
|
|
### Problemas Comuns
|
|
|
|
1. **Erro de dependências**:
|
|
```bash
|
|
# Solução: usar --legacy-peer-deps
|
|
npm install --legacy-peer-deps
|
|
```
|
|
|
|
2. **Erro de build**:
|
|
```bash
|
|
# Verificar se o Node.js 18 está sendo usado
|
|
node --version
|
|
```
|
|
|
|
3. **Erro de roteamento SPA**:
|
|
```bash
|
|
# Verificar se o default.conf está correto
|
|
# Deve ter: try_files $uri $uri/ /index.html;
|
|
```
|
|
|
|
4. **Erro de permissões**:
|
|
```bash
|
|
# Verificar permissões dos arquivos
|
|
ls -la /usr/share/nginx/html
|
|
```
|
|
|
|
### Comandos Úteis
|
|
|
|
```bash
|
|
# Verificar status do container
|
|
docker ps
|
|
|
|
# Entrar no container
|
|
docker exec -it [container-id] /bin/sh
|
|
|
|
# Verificar arquivos servidos
|
|
docker exec [container-id] ls -la /usr/share/nginx/html
|
|
|
|
# Testar Nginx
|
|
docker exec [container-id] nginx -t
|
|
|
|
# Recarregar configuração do Nginx
|
|
docker exec [container-id] nginx -s reload
|
|
```
|
|
|
|
## 📊 Monitoramento
|
|
|
|
### Métricas Importantes
|
|
|
|
- **Uptime**: verificar via `/health`
|
|
- **Logs de acesso**: monitorar via Nginx
|
|
- **Uso de recursos**: CPU e memória
|
|
- **Tempo de resposta**: páginas carregando < 2s
|
|
|
|
### Alertas Recomendados
|
|
|
|
- Container down
|
|
- Alto uso de CPU (> 80%)
|
|
- Muitos erros 4xx/5xx
|
|
- Tempo de resposta elevado
|
|
|
|
## 🔒 Segurança
|
|
|
|
### Headers de Segurança Implementados
|
|
|
|
```nginx
|
|
X-Frame-Options: SAMEORIGIN
|
|
X-Content-Type-Options: nosniff
|
|
X-XSS-Protection: 1; mode=block
|
|
Referrer-Policy: strict-origin-when-cross-origin
|
|
```
|
|
|
|
### Recomendações Adicionais
|
|
|
|
- Usar HTTPS sempre
|
|
- Configurar firewall adequadamente
|
|
- Monitorar logs de acesso
|
|
- Manter Nginx atualizado
|
|
|
|
## 📈 Performance
|
|
|
|
### Otimizações Implementadas
|
|
|
|
- **Compressão gzip** para todos os assets
|
|
- **Cache headers** otimizados
|
|
- **Build otimizado** com Vite
|
|
- **Imagem Docker leve** (Alpine Linux)
|
|
|
|
### Métricas Esperadas
|
|
|
|
- **Primeiro carregamento**: < 2s
|
|
- **Navegação**: < 0.5s
|
|
- **Tamanho do bundle**: < 2MB
|
|
- **Lighthouse score**: > 90
|
|
|
|
---
|
|
|
|
## 🆘 Suporte
|
|
|
|
Em caso de problemas:
|
|
|
|
1. Verificar logs do Coolify
|
|
2. Consultar documentação do Coolify
|
|
3. Verificar configurações de rede
|
|
4. Testar localmente primeiro
|
|
|
|
**Deploy realizado com sucesso! 🎉** |