Files
2026-09-29 14:25:37 -03:00

136 lines
3.2 KiB
Markdown

# Deploy em condominio.seconectai.com.br
Servidor alvo: `45.13.59.110`
Domínio: `condominio.seconectai.com.br`
## 1. DNS
No painel DNS do domínio, crie/ajuste:
```text
Tipo: A
Nome: condominio
Valor: 45.13.59.110
TTL: 300 ou automático
```
Confirme:
```bash
dig +short condominio.seconectai.com.br
```
## 2. Instalar os comandos globais no servidor
Em um servidor novo, instale os comandos direto do Gitea:
```bash
curl -fsSL https://producao-gitea.0jo7zj.easypanel.host/tiago/Condominio_SeConectai/raw/branch/main/scripts/bootstrap-commands.sh | sudo bash
```
Se você já estiver dentro da pasta do projeto, também pode rodar:
```bash
sudo ./scripts/install-commands.sh
```
Isso instala dois comandos no servidor:
```bash
seconectaicondominio.install
seconectaicondominio.update
```
## 3. Primeira instalação com um comando
Depois de instalar os comandos globais, rode:
```bash
seconectaicondominio.install 10031992
```
O valor `10031992` é a senha Master inicial. Depois da instalação, você entra no painel Master usando essa senha.
O comando clona/atualiza o código do Gitea em `/opt/SeConectai_Condominios`, gera automaticamente o `.env`, constrói as imagens Docker localmente e sobe os containers.
Ele gera automaticamente:
- `DB_PASSWORD`
- `JWT_SECRET`
- `EVOLUTION_GLOBAL_API_KEY`
- `EVOLUTION_WEBHOOK_SECRET` para proteger o webhook de respostas da Evolution
- `ABACATEPAY_WEBHOOK_SECRET`
- `EVOLUTION_DATABASE_CONNECTION_URI` com senha URL-encoded
- `MASTER_PASSWORD_HASH` a partir da senha Master inicial
Acesse:
```text
https://condominio.seconectai.com.br
```
## 4. Atualizar o sistema depois de novos commits
No servidor, rode de qualquer pasta:
```bash
seconectaicondominio.update
```
Esse comando entra em `/opt/SeConectai_Condominios`, baixa as atualizações do Gitea e recria os containers Docker.
## 5. Alternativa sem comandos globais
Se preferir rodar pela pasta do projeto:
```bash
./scripts/install-prod.sh "SENHA_MASTER_INICIAL"
./scripts/update-prod.sh
```
## 6. Logs úteis
```bash
docker compose -f /opt/SeConectai_Condominios/docker-compose.prod.yml ps
docker compose -f /opt/SeConectai_Condominios/docker-compose.prod.yml logs -f app
docker compose -f /opt/SeConectai_Condominios/docker-compose.prod.yml logs -f evolution-api
docker compose -f /opt/SeConectai_Condominios/docker-compose.prod.yml logs -f caddy
```
## 7. Testes
```bash
curl -I https://condominio.seconectai.com.br
curl https://condominio.seconectai.com.br/health
```
Resposta esperada:
```json
{"status":"ok"}
```
## 8. Webhook AbacatePay
Depois da instalação, o script mostra o link completo. O formato é:
```text
https://condominio.seconectai.com.br/api/master/webhooks/abacpay?webhookSecret=SEU_SEGREDO
```
O endpoint correto no sistema é:
```text
https://condominio.seconectai.com.br/api/master/webhooks/abacatepay?webhookSecret=SEU_SEGREDO
```
Use o valor gerado em `ABACATEPAY_WEBHOOK_SECRET` no `.env`.
## 9. Observações
- O arquivo `.env` gerado contém segredos reais e não deve ir para Git.
- Postgres e Redis não ficam publicados na internet no compose de produção.
- Caddy emite HTTPS automaticamente.
- Uploads ficam em `/opt/SeConectai_Condominios/uploads` no servidor.
- Faça backup dos volumes Docker e da pasta `uploads`.