docs: add Cloudflare zone info and DNS management agent

This commit is contained in:
Tiago Yamamoto 2026-02-16 20:33:20 -06:00
parent 6d84b0fa4b
commit 2e632a630b
2 changed files with 157 additions and 0 deletions

95
docs/CLOUDFLARE.md Normal file
View file

@ -0,0 +1,95 @@
# Cloudflare Agent - GoHorseJobs
Ferramenta para gerenciar DNS e cache do Cloudflare via API.
## Configuração
O token da API está em `~/.ssh/cloudflare-token`:
```
Email: yamamoto@rede5.com.br
Zone ID: 5e7e9286849525abf7f30b451b7964ac
```
## Variáveis de Ambiente
```bash
export CF_AUTH_EMAIL="yamamoto@rede5.com.br"
export CF_AUTH_KEY="5dcfd89a9d4ec330dede0d4074a518f26818e"
export CF_ZONE_ID="5e7e9286849525abf7f30b451b7964ac"
```
## Comandos Úteis
### Listar todos os DNS records
```bash
curl -s -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/dns_records"
```
### Buscar records por nome
```bash
curl -s -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/dns_records?name=gohorsejobs.com"
```
### Criar novo DNS record
```bash
curl -s -X POST -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
-H "Content-Type: application/json" \
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/dns_records" \
-d '{
"type": "A",
"name": "test.gohorsejobs.com",
"content": "1.2.3.4",
"proxied": false
}'
```
### Deletar DNS record
```bash
curl -s -X DELETE -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/dns_records/<RECORD_ID>"
```
### Limpar todo o cache
```bash
curl -s -X DELETE -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
-H "Content-Type: application/json" \
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/purge_cache" \
-d '{"purge_everything":true}'
```
### Verificar zone details
```bash
curl -s -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID"
```
## Scripts
### Script bash helper (colocar em ~/bin/ ou PATH)
```bash
#!/bin/bash
# cf.sh - Cloudflare CLI helper
CF_AUTH_EMAIL="yamamoto@rede5.com.br"
CF_AUTH_KEY="5dcfd89a9d4ec330dede0d4074a518f26818e"
CF_ZONE_ID="5e7e9286849525abf7f30b451b7964ac"
BASE_URL="https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID"
case "$1" in
ls)
curl -s -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" "$BASE_URL/dns_records"
;;
purge)
curl -s -X DELETE -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
-H "Content-Type: application/json" "$BASE_URL/purge_cache" \
-d '{"purge_everything":true}'
;;
*)
echo "Usage: $0 {ls|purge}"
;;
esac
```

View file

@ -8,6 +8,68 @@ Infraestrutura, CI/CD e deploy do projeto GoHorseJobs no servidor `apolo`.
--- ---
## ☁️ Cloudflare DNS Zone
### Zone Info
| Property | Value |
|----------|-------|
| **Zone ID** | `5e7e9286849525abf7f30b451b7964ac` |
| **Domain** | gohorsejobs.com |
| **Account** | gohorsejobs |
| **Email** | yamamoto@rede5.com.br |
| **Plan** | Free Website |
| **Name Servers** | chuck.ns.cloudflare.com, fatima.ns.cloudflare.com |
### API Access
```bash
# Token location: ~/.ssh/cloudflare-token
export CF_AUTH_EMAIL="yamamoto@rede5.com.br"
export CF_AUTH_KEY="5dcfd89a9d4ec330dede0d4074a518f26818e"
# List zones
curl -s -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
"https://api.cloudflare.com/client/v4/zones"
# List DNS records
curl -s -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
"https://api.cloudflare.com/client/v4/zones/5e7e9286849525abf7f30b451b7964ac/dns_records"
# Purge cache
curl -s -X DELETE -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
-H "Content-Type: application/json" \
"https://api.cloudflare.com/client/v4/zones/5e7e9286849525abf7f30b451b7964ac/purge_cache" \
-d '{"purge_everything":true}'
```
### Active DNS Records (gohorsejobs.com)
| Subdomain | Type | IP/Target | Proxied |
|-----------|------|------------|---------|
| dev.gohorsejobs.com | A | 38.19.201.52 | No |
| api.gohorsejobs.com | A | 86.48.29.139 | Yes |
| api-dev.gohorsejobs.com | A | 86.48.29.139 | Yes |
| api-local.gohorsejobs.com | A | 38.19.201.52 | No |
| b-local.gohorsejobs.com | A | 38.19.201.52 | No |
| s-local.gohorsejobs.com | A | 38.19.201.52 | No |
| coolify-dev.gohorsejobs.com | A | 185.194.141.70 | No |
| panel.gohorsejobs.com | A | Multiple (Load Balanced) | Yes |
| pipe.gohorsejobs.com | A | Multiple (Load Balanced) | Yes |
| alert.gohorsejobs.com | A | Multiple (Load Balanced) | Yes |
| task.gohorsejobs.com | A | Multiple (Load Balanced) | Yes |
| stats.gohorsejobs.com | A | Multiple (Load Balanced) | Yes |
| storage.gohorsejobs.com | A | Multiple (Load Balanced) | Yes |
| base.gohorsejobs.com | A | Multiple | No |
| reg.gohorsejobs.com | A | Multiple (Load Balanced) | Yes |
| gohorsejobs.com | CNAME | gohorsejobs.pages.dev | Yes |
| *.gohorsejobs.com | CNAME | 8a3f435b-f374-4268-90f7-5610f577c706.cfargotunnel.com | Yes |
| mail.gohorsejobs.com | CNAME | everest.mxrouting.net | No |
> Total: 190 DNS records (paginados)
---
## ☁️ Coolify DEV Environment (Redbull) ## ☁️ Coolify DEV Environment (Redbull)
Ambiente de desenvolvimento no Coolify para deploy automatizado via Git. Ambiente de desenvolvimento no Coolify para deploy automatizado via Git.