EM ANDAMENTO
Resumo técnico
O NEXUS Docker API conecta o painel a Docker Engines multi-host por socket local, TCP+TLS ou SSH para listar, auditar e controlar containers, networks e imagens. Integra Image Intelligence com Trivy (CVE, secrets, misconfig e SBOM CycloneDX) e converte eventos de containers monitorados em tarefas NEXUS.
Escopo executado
- Registro do plugin (
registerTab('docker-api','Docker API','container',tab.php,'DevOps & Infra')+registerDoc) edocker_install()criando as tabelasdocker_audit_logedocker_image_scans. - API com ~33 actions
docker_*: status/stats (overview por host + stats por container), containers (list/inspect/start/stop/restart/logs/remove), images (list/remove), networks, audit/history/alerts, hosts (list/save/delete/test), settings e scans (image_scan, scans_list, scan_get, scan_running) + trivy_status/bootstrap + tracked/events (tracked_list/add/update/remove, events_poll) + fastr e suggest. - Multi-host e transportes:
hosts[]em Configurações — socket local (DOCKER_DEFAULT_SOCKET), TCP com TLS opcional e SSH com identidade; certs/keys PEM emstorage/docker-certs/<host_id>/(dentro do open_basedir);docker_host_testvalida conexão e versão. - Segurança:
allow_control(false por padrão, global ou por host) libera start/stop/restart/remove (force) e image_remove;allow_logscontrola logs; toda operação de controle é gravada emdocker_audit_log. - Image Intelligence (Trivy):
trivy_mode=autoresolve portable bootstrap emstorage/docker-scans/bin/trivy(sem root) →trivy_bincustom → system (/opt/trivy,/usr/local/bin,/usr/bin) → imagemaquasec/trivy; scanners vuln/secret/misconfig; SBOM CycloneDX emdocker_image_scans.sbom_json; cache emstorage/docker-scans/trivy-cache/;docker_trivy_bootstrapinstala o scanner pela UI (shared-hosting friendly). - Eventos → tarefas (v1.3): containers monitorados por host (
docker_tracked_*); tipos die/oom/health_status/kill;docker_events_polllê/events?since&untile cria tarefas NEXUS (projeto/prioridade configuráveis, dedupe de 900 s). - Cronjobs/workers:
docker_scan_running(tick, throttle 6 h, max 4 imagens) edocker_events_poll(tick, throttle 2 min) viacronjob.json; CLIcli.phpdispara scan running de 4 imagens. - Fast Responses e enricher:
/dockere/docker-scan(select de containers/imagens após o comando; catálogo no comentário sem escolha),/ia docker//ia docker-scan;docker_fastr_suggestalimenta o autocomplete; enricherdocker://nomeoudocker://host/nome(prioridade 55). - Interface (
tab.php, 1108 linhas, AlpinedockerApp()): 9 abas — Containers, Networks, Tracked (monitorados), Inspect, Images, History, Alerts, Task e Config (hosts com picker socket/tcp/ssh) + stat cards e gate de controle.
Stack e ferramentas
- PHP 8 backend (
strict_types, sem framework) + MySQL 8 (docker_audit_log,docker_image_scans) - Docker Engine API: socket unix, TCP com TLS opcional e SSH (multi-host)
- Trivy 0.72.0 (portable/system/imagem Docker) para vuln, secret, misconfig e SBOM CycloneDX
- Alpine.js + Tailwind CSS (
tab.php) - Plugin API interno: PluginManager tabs/actions +
cronjob.json+fastr.json+ enricher
Tags operacionais
- Docker
- Multi-host
- Containers
- Networks
- Trivy
- Image Intelligence
- Eventos
- Plugin NEXUS
Resultado operacional
- Multi-host unificado: um único painel gerencia N Docker Engines (socket/TCP+TLS/SSH) com ping, versão, stats e auditoria por host.
- Auditoria e controle com gates:
allow_controldesligado por padrão (global ou por host); operações destrutivas (remove/force) exigem gate e ficam registradas emdocker_audit_log. - Image Intelligence sem root: Trivy portátil em
storage/docker-scans/funciona em hospedagem compartilhada (bootstrap pela UI), com vuln/secret/misconfig e SBOM. - Eventos → tarefas: containers monitorados viram tarefas NEXUS automaticamente (die, oom, health_status, kill) com dedupe e projeto/prioridade configuráveis.
- Fast Responses e enricher:
/dockere/docker-scanoperam via Fast Responses e o enricherdocker://host/nomeanexa contexto Docker a tarefas. - Agendamento integrado: scan de imagens em execução (throttle 6 h) e poll de eventos (2 min) rodam pelo soft-cron do NEXUS Cronjobs.
Andamento no GitHub (issues)
Painel em tempo real com as issues mais recentes do repositório.
live feed
abrir issues no githubcarregando andamento...
não foi possivel carregar as issues agora. abra no github pelo link acima.
Resultados reais
Conecta o painel NEXUS a Docker Engines multi-host por socket local, TCP+TLS ou SSH para listar, auditar e controlar containers, networks e imagens; integra Image Intelligence com Trivy e converte eventos de containers monitorados em tarefas NEXUS.
Arquitetura e organização
- PHP 8
- MySQL 8
- Docker Engine API
- Trivy
- Alpine.js
- Tailwind CSS
- Plugin NEXUS
Execução e operação
O projeto segue fluxo reprodutível de execução com validação técnica em ambiente de produção/similar.
Screenshots
Falar sobre este projeto
Aplique este modelo no seu ambiente e acelere a entrega com consistência técnica.