⑥Docker・コンテナ

Dockerのログ管理とモニタリング【本番運用に必要な監視設定】

⑥Docker・コンテナ
記事内に広告が含まれています。

本番環境で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でコンテナのリソース使用状況を可視化できる

コメント

タイトルとURLをコピーしました