本番環境でDockerを運用するにはログ管理とモニタリングが欠かせません。Dockerのログ設定とcAdvisorによるコンテナ監視を解説します。
Dockerのログドライバー設定
sudo nano /etc/docker/daemon.json
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
}
}
sudo systemctl restart docker
コンテナのログ確認コマンド
| コマンド | 説明 |
|---|---|
| docker logs コンテナID | ログを表示 |
| docker logs -f コンテナID | リアルタイムでログを追跡 |
| docker logs –tail 100 コンテナID | 最新100行を表示 |
| docker logs –since 1h コンテナID | 1時間以内のログを表示 |
cAdvisorでコンテナを監視
docker run -d --name cadvisor \
--volume /:/rootfs:ro \
--volume /var/run:/var/run:ro \
--volume /sys:/sys:ro \
--volume /var/lib/docker/:/var/lib/docker:ro \
--publish 8080:8080 \
ghcr.io/google/cadvisor:latest
ブラウザで http://localhost:8080 にアクセスすると各コンテナのCPU・メモリ・ネットワーク使用率をリアルタイムで確認できます。
まとめ
- daemon.jsonでログのサイズと世代数を制限してディスク枯渇を防ぐ
- docker logs -fでコンテナのログをリアルタイム確認できる
- cAdvisorでコンテナのリソース使用状況を可視化できる



コメント