docs(TOOLS): adiciona seção Docker Swarm + Portainer (9 stacks, 6 domínios caddy, admin token info)

This commit is contained in:
Pulse Agent
2026-05-20 17:28:04 -03:00
parent cfb037d081
commit e8342a1c30
2 changed files with 53 additions and 0 deletions
+52
View File
@@ -242,3 +242,55 @@ Repositórios que o agent Pulse usa como memória persistente de curto e longo p
- Instalação/remoção de skill: commit de `skills/``pulse-skills`
- Novo projeto: commit → `pulse-projects`
- Cadência: **1 push por sessão** (não commit a cada passo)
---
## 🐳 Docker Swarm — octal.tec.br (2026-05-20 inventariado)
### Acesso
- **Portainer CE**: https://dock.octal.tec.br — stack `dock`
- **Admin token PTR**: `ptr_ZE3R0WgRB07W7moQ7rpX135MqZ+F8OMuYC9U7Rqa5dU=`
- Prefixo `ptr_` = Portainer Access Token — válido para `/api/status` (200)
- 401 em `/api/endpoints` e `/api/auth` — escopo reduzido, não é JWT admin pleno
- Senha admin real necessária para operações de mutação (login via POST `/api/auth`)
- **Portas portainer**: `8000/tcp`, `9000/tcp`, `9443/tcp` (dentro do swarm)
- **Agent Portainer**: `io.portainer.agent=true` label — obrigatório em cada node Swarm
### Stack 9 stacks (22 containers)
| Stack | Svc | Portas externas |
|---|---|---|
| `bot` | 2 | — |
| `code` | 1 | — |
| `database` | 2 | — |
| `design` | 7 (Penpot) | 1080→mailcatch |
| `dock` | 2 | 80/443 (ports abertas no node) |
| `git` | 1 | 22/3000 |
| `pro` | 2 | — |
| `projects` | 3 | ⚠️ `pulse-libs` 0/1 |
| `proxy` | 2 | 80→80, 443→443 |
### Domínios Caddy (auto-proxy)
| Domínio | Stack | Service | Porta |
|---|---|---|---|
| `dock.octal.tec.br` | dock | dock_portainer | 9443/9000 |
| `git.octal.tec.br` | git | git_gitea | 3000 |
| `ai.octal.tec.br` | bot | bot_beebot | 18789 |
| `manager.octal.tec.br` | pro | pro_leantime | 8080 |
| `games.octal.tec.br` | projects | projects_games-demo | 80 |
| `test.octal.tec.br` | proxy | proxy_test-octal | — |
### Redes Overlay
`10.0.0.0/8` subdividido em /24 por stack: ingress, public, dbn, mongo-cluster, pro_leantime_net, design_internal, proxy_proxy-net
### Comandos úteis
```bash
docker stack ls
docker service ls
docker network inspect <id>
docker service inspect <nome> --format '{{json .Config.Labels}}'
```
### ⚠️ Portainer API Notas
- Access token `ptr_*` ≠ JWT admin completo — validar okrespo no UI
- Senha admin no Portainer deve ser trocada periodicamente — não documentada no pulse-memory
- Mutação de stacks: usar Portainer UI ou `docker stack deploy` diretamente (não alterar arquivos de config em containers Alpine — não tem editor)
Submodule
+1
Submodule pulse-docs added at b2b5d2dc30