在 Ubuntu 上使用 Docker 时,监控可以从系统层、容器层、日志、可视化工具几个维度来做。下面按常用程度给你一个清晰清单。
docker stats
显示:
按 Ctrl+C 退出。
docker ps
docker logs -f 容器名或ID
加 -f 实时跟踪。
top
htop # 推荐,需安装
sudo apt install htop
df -h
du -sh /var/lib/docker
Docker 默认数据在:
/var/lib/docker
sudo apt install ctop
ctop
可看到每个容器实时状态。
docker inspect 容器ID
查看:
journalctl -u docker.service
/etc/docker/daemon.json:
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
}
}
重启:
sudo systemctl restart docker
架构:
node-exporter → Prometheus → Grafana
cadvisor ↗
快速示例(docker-compose):
version: '3'
services:
cadvisor:
image: gcr.io/cadvisor/cadvisor
volumes:
- /:/rootfs:ro
- /var/run:/var/run:ro
- /sys:/sys:ro
- /var/lib/docker:/var/lib/docker:ro
ports:
- 8080:8080
prometheus:
image: prom/prometheus
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
ports:
- 9090:9090
grafana:
image: grafana/grafana
ports:
- 3000:3000
docker run -d \
-p 9000:9000 \
-v /var/run/docker.sock:/var/run/docker.sock \
portainer/portainer
浏览器访问:
http://IP:9000
重点关注:
如果你愿意,我可以:
你现在是哪种使用场景?