Este documento descreve como subir a ferramenta, o efeito de cada parâmetro e os cuidados de configuração em cada modo.
Imagem publicada:
thiagomoreiraboby/monitor-ubuntu-server:latest
MONITOR_MODE=localUse quando o container estiver no mesmo host Ubuntu que será monitorado.
Esse modo deve ser executado com pid: host ou --pid host. Sem isso, a lista de processos pode refletir apenas o namespace do container.
Requisitos:
/hostfslm-sensors configurado no host para temperaturasExemplo com docker run:
docker run -d \
--name monitor-ubuntu-server \
--restart unless-stopped \
--pid host \
-p 8080:8080 \
-e MONITOR_MODE=local \
-e MONITOR_TARGET_NAME="Ubuntu Local" \
-e HOST_ROOT=/hostfs \
-e HOST_PROC=/proc \
-e PORT=8080 \
-e REFRESH_SECONDS=5 \
-v /:/hostfs:ro,rslave \
thiagomoreiraboby/monitor-ubuntu-server:latest
MONITOR_MODE=sshUse quando quiser monitorar outro Ubuntu sem instalar a aplicação nele.
Requisitos no host remoto:
python3pslm-sensors, se quiser sensores térmicosnvidia-smi, se quiser GPU NVIDIAExemplo:
docker run -d \
--name monitor-ubuntu-server \
--restart unless-stopped \
-p 8080:8080 \
-e MONITOR_MODE=ssh \
-e MONITOR_TARGET_NAME="Servidor Remoto" \
-e SSH_HOST=192.168.1.50 \
-e SSH_PORT=22 \
-e SSH_USER=ubuntu \
-e SSH_KEY_PATH=/run/secrets/id_rsa \
-v C:/Users/thiag/.ssh/id_rsa:/run/secrets/id_rsa:ro \
thiagomoreiraboby/monitor-ubuntu-server:latest
MONITOR_MODElocal, sshlocalMONITOR_TARGET_NAMEUbuntu HostHOST_ROOT/hostfs se existir, senão /local para calcular armazenamento com base no filesystem real do host.ssh.HOST_PROC/proclocal para ler CPU, memória, rede, processos e tabela de mounts.pid: host, esse caminho já representa o /proc do host.ssh.PORT8080Exemplo:
-e PORT=8090 -p 8090:8090
REFRESH_SECONDS5SSH_HOSTsshSSH_PORT22SSH_USERsshSSH_KEY_PATHExemplo:
-e SSH_KEY_PATH=/run/secrets/id_rsa \
-v /home/ubuntu/.ssh/id_rsa:/run/secrets/id_rsa:ro
SSH_EXTRA_ARGSssh.Exemplo:
-e SSH_EXTRA_ARGS="-o ConnectTimeout=5 -o ServerAliveInterval=10"
services:
monitoramento-pc:
image: thiagomoreiraboby/monitor-ubuntu-server:latest
container_name: monitoramento-pc
restart: unless-stopped
pid: host
environment:
MONITOR_MODE: local
MONITOR_TARGET_NAME: Ubuntu Host
HOST_ROOT: /hostfs
HOST_PROC: /proc
PORT: 8080
REFRESH_SECONDS: 5
ports:
- "8080:8080"
volumes:
- /:/hostfs:ro,rslave
services:
monitoramento-pc:
image: thiagomoreiraboby/monitor-ubuntu-server:latest
container_name: monitoramento-pc
restart: unless-stopped
environment:
MONITOR_MODE: ssh
MONITOR_TARGET_NAME: Servidor SSH
PORT: 8080
REFRESH_SECONDS: 5
SSH_HOST: 192.168.1.50
SSH_PORT: 22
SSH_USER: ubuntu
SSH_KEY_PATH: /run/secrets/id_rsa
ports:
- "8080:8080"
volumes:
- C:/Users/thiag/.ssh/id_rsa:/run/secrets/id_rsa:ro
GET /api/configResposta:
{
"mode": "local",
"target": "Ubuntu Host",
"refresh_seconds": 5
}
GET /api/metricsResposta:
{
"collected_at": "2026-03-25T12:00:00+00:00",
"mode": "local",
"target": "Ubuntu Host",
"summary": {},
"snapshot": {}
}
nvidia-smisensorsssh, o alvo remoto precisa aceitar execução de python3 -SSH_EXTRA_ARGS não é parseado como shell completolocal, sem pid: host, a seção de processos não representa corretamente o hostVerifique:
/hostfs está montado no modo localpid: host no modo localSSH_HOST e SSH_USER estão corretos no modo sshSSH_KEY_PATH é legível dentro do containerVerifique:
pid: hostHOST_PROC está apontando para /procMONITOR_MODE=localVerifique:
/hostfslocalVerifique:
nvidia-smi funciona no hostVerifique:
lm-sensors está instaladosensors-detect --auto já foi executadoContent type
Image
Digest
sha256:24d286d94…
Size
44.8 MB
Last updated
6 months ago
docker pull thiagomoreiraboby/monitor-ubuntu-server