UbuntuでDockerログを確認する方法 | リアルタイム監視
- 作成日 2026.06.10
- 更新日 2026.06.17
- ubuntu
UbuntuでDockerを運用していると、アプリケーションの動作確認やエラー調査のためにログ確認が必要になります。Dockerではコンテナごとにログが管理されており、コマンド一つで確認できます。ここではUbuntu環境でDockerログを確認する方法から、リアルタイム監視、保存場所の確認、ログ管理のポイントまで詳しくまとめます。
Dockerコンテナのログを確認する基本コマンド
Dockerで稼働中または停止済みのコンテナログを確認するには以下のコマンドを実行します。
docker logs コンテナ名例
docker logs nginxまたはコンテナIDを指定することも可能です。
docker logs 3f8a1c2d4b5e実行するとコンテナ起動後から現在までの標準出力(stdout)と標準エラー出力(stderr)が表示されます。
起動中のコンテナ一覧を確認する方法
ログを確認する前にコンテナ名やIDを調べる場合は以下を実行します。
docker ps停止済みコンテナも含めて確認する場合はこちらです。
docker ps -a出力例
CONTAINER ID IMAGE NAMES
3f8a1c2d4b5e nginx web-serverNAMES列の値をdocker logsコマンドで利用できます。
リアルタイムでログを監視する方法
アプリケーションの動作をリアルタイムで確認したい場合は「-f」オプションを利用します。
docker logs -f nginxLinuxのtail -fと同じように新しいログが継続的に表示されます。
監視を終了する場合は以下を押します。
Ctrl + C最新のログだけを表示する方法
大量のログがある場合は最新の数十行だけ確認すると効率的です。
最新100行を表示する例
docker logs --tail 100 nginx最新20行を表示する例
docker logs --tail 20 nginxリアルタイム監視と組み合わせることもできます。
docker logs -f --tail 50 nginx特定期間のログを確認する方法
Dockerでは日時を指定してログを取得できます。
直近1時間のログ
docker logs --since 1h nginx直近30分
docker logs --since 30m nginx特定日時以降
docker logs --since="2025-01-01T00:00:00" nginx障害発生時の調査で非常に便利です。
タイムスタンプ付きでログを表示する方法
ログの発生時刻を確認したい場合は以下を利用します。
docker logs -t nginx出力例
2025-01-01T10:00:00.000000000Z Server started
2025-01-01T10:00:05.000000000Z Request receivedリアルタイム監視と組み合わせることも可能です。
docker logs -f -t nginxDockerログの保存場所を確認する方法
Ubuntuでデフォルトのjson-fileログドライバーを利用している場合、ログファイルは以下に保存されています。
/var/lib/docker/containers/コンテナID配下にあるJSONファイルを確認できます。
例
/var/lib/docker/containers/3f8a1c2d4b5e/ログファイル確認
sudo ls -lh /var/lib/docker/containers/3f8a1c2d4b5e/直接確認する場合
sudo cat *-json.logただし通常はdocker logsコマンドの利用が推奨されます。
Docker Compose環境でログを確認する方法
Docker Composeを利用している場合は以下を実行します。
全サービスのログ表示
docker compose logs特定サービスのみ
docker compose logs webリアルタイム監視
docker compose logs -f最新100行のみ表示
docker compose logs --tail=100ログサイズが肥大化する場合の対策
Dockerログは放置すると容量を圧迫することがあります。
現在のディスク使用量確認
docker system dfログローテーション設定例
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
}
}設定ファイル
/etc/docker/daemon.json設定変更後はDockerを再起動します。
sudo systemctl restart dockerログ確認時によく使うコマンドまとめ
全コンテナ確認
docker ps -aログ表示
docker logs コンテナ名リアルタイム監視
docker logs -f コンテナ名最新50行表示
docker logs --tail 50 コンテナ名タイムスタンプ表示
docker logs -t コンテナ名Docker Composeログ
docker compose logs -fDockerログを適切に確認できるようになると、アプリケーションエラーの解析やサーバー障害対応が大幅に効率化されます。日常的には「docker logs -f」と「docker compose logs -f」を覚えておくだけでも、多くのトラブルに迅速に対応できます。
-
前の記事
【完全版】Oracle Databaseでユーザー一覧を取得する全方法 2026.06.09
-
次の記事
【完全版】Oracle Databaseでディレクトリを確認する全方法|ALL_DIRECTORIES 2026.06.10
コメントを書く