Dockerの「トラブルシューティングとデバッグ」において、docker logs コマンドは非常に重要なツールの一つです。このコマンドを使うことで、コンテナの標準出力(STDOUT)および標準エラー出力(STDERR)を確認することができ、アプリケーションの挙動やエラーの原因を特定する手がかりとなります。
1. 基本構文
2. 使用例
このコマンドは、my_container という名前のコンテナからログを取得して表示します。
3. よく使うオプション
| オプション | 説明 |
|---|---|
-f, --follow |
リアルタイムでログ出力を監視(tail -f に類似) |
--tail <行数> |
表示する直近のログの行数を制限(例: --tail 100) |
--since |
指定した時間以降のログのみを表示(例: --since="10m") |
--until |
指定した時間までのログのみを表示(例: `–until=”2025-06-25T10:00:00″) |
実用例:
このコマンドは、my_container のログの最後の50行を表示し、リアルタイムでの追跡を行います。
4. 注意点
-
永続的なログ保持は行われません。コンテナが削除されるとログも消失します。
-
ログ出力の内容は、コンテナ内部のアプリケーションが標準出力または標準エラー出力に書き込んだもののみが対象です。アプリケーションが独自のログファイルを使用している場合は、
docker logsでは確認できません。
5. トラブルシューティングへの活用
-
アプリケーションの起動エラーの原因を確認
-
クラッシュの直前の状態を把握
-
外部サービスとの通信結果の確認(エラーコードやレスポンス内容など)
6. 代替または補助ツール
-
docker inspect:コンテナの設定・状態を確認 -
docker events:コンテナに関連するイベント履歴を確認 -
docker exec:稼働中コンテナに入って内部のログファイルなどを直接確認
まとめ
docker logs は、Dockerコンテナに関する不具合や挙動の異常を確認する際の基本的かつ有用なコマンドです。特にトラブル発生時には、まず最初に確認すべき情報源の一つです。ログの出力形式や内容はアプリケーション依存ですが、デバッグの第一歩として有効に活用できます。
ChatGPT4o 生成日:2025/06/25