docs(TOOLS): adiciona seção Docker Swarm + Portainer (9 stacks, 6 domínios caddy, admin token info)
This commit is contained in:
@@ -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`
|
- Instalação/remoção de skill: commit de `skills/` → `pulse-skills`
|
||||||
- Novo projeto: commit → `pulse-projects`
|
- Novo projeto: commit → `pulse-projects`
|
||||||
- Cadência: **1 push por sessão** (não commit a cada passo)
|
- 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
Reference in New Issue
Block a user