88 lines
2.4 KiB
Markdown
88 lines
2.4 KiB
Markdown
# GUIA DE DEPLOY - SCOREODONTO CRM (VPS)
|
|
|
|
Este guia detalha o processo de implantação do ScoreOdonto CRM em um servidor VPS (Ubuntu/Debian recomendado).
|
|
|
|
## 1. Pré-requisitos
|
|
* Node.js (v18+) e NPM.
|
|
* MySQL Server.
|
|
* Nginx (como Proxy Reverso).
|
|
* PM2 (Gerenciador de Processos).
|
|
|
|
## 2. Configuração do Banco de Dados
|
|
No servidor MySQL da VPS, crie o banco e as tabelas:
|
|
```sql
|
|
CREATE DATABASE sis_odonto CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
```
|
|
Importe seus dados usando o `SyncView` ou o script de atualização após o deploy.
|
|
|
|
## 3. Preparação do Ambiente
|
|
Clone o repositório na VPS e instale as dependências:
|
|
```bash
|
|
cd /var/www/scoreodonto
|
|
npm install
|
|
```
|
|
|
|
Crie o arquivo `.env` na pasta raiz (`scoreodonto/`):
|
|
```env
|
|
PORT=3002
|
|
DB_HOST=localhost
|
|
DB_USER=seu_usuario
|
|
DB_PASSWORD=sua_senha
|
|
DB_NAME=sis_odonto
|
|
```
|
|
|
|
## 4. Build do Frontend
|
|
Gere os arquivos estáticos para produção:
|
|
```bash
|
|
npm run build
|
|
```
|
|
Isso criará a pasta `dist` (ou `build`).
|
|
|
|
## 5. Gerenciamento com PM2
|
|
Inicie o servidor backend:
|
|
```bash
|
|
pm2 start server.js --name "scoreodonto-api"
|
|
pm2 save
|
|
```
|
|
|
|
## 6. Configuração do Nginx
|
|
Edite o arquivo de configuração do site no Nginx (`/etc/nginx/sites-available/scoreodonto`):
|
|
|
|
```nginx
|
|
server {
|
|
listen 80;
|
|
server_name seu-dominio.com;
|
|
|
|
# Frontend
|
|
location / {
|
|
root /var/www/scoreodonto/dist;
|
|
index index.html;
|
|
try_files $uri $uri/ /index.html;
|
|
}
|
|
|
|
# Backend API
|
|
location /api {
|
|
proxy_pass http://localhost:3002;
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection 'upgrade';
|
|
proxy_set_header Host $host;
|
|
proxy_cache_bypass $http_upgrade;
|
|
}
|
|
}
|
|
```
|
|
Ative o site e reinicie o Nginx:
|
|
```bash
|
|
sudo ln -s /etc/nginx/sites-available/scoreodonto /etc/nginx/sites-enabled/
|
|
sudo nginx -t
|
|
sudo systemctl restart nginx
|
|
```
|
|
|
|
## 7. Ajustes de Produção
|
|
* **API URL**: O frontend agora usa o `API_URL` relativo ou configurado via environment. Como o Nginx está redirecionando `/api` para o backend, o sistema funcionará corretamente de forma transparente.
|
|
* **Notificações**: Estão unificadas no topo de cada página para fácil acesso.
|
|
* **Segurança**: Certifique-se de configurar um certificado SSL (Certbot/Let's Encrypt).
|
|
|
|
---
|
|
*Gerado automaticamente pelo Antigravity.*
|