docker logs

説明

コンテナのログを取得します。

使い方

$ docker logs [OPTIONS] CONTAINER

補足説明

docker logs コマンドは、コンテナの実行時から現在に至るまでのログを、逐次表示します。

注釈

このコマンドが使えるのは、コンテナが json-filejournald ロギング・ドライバを使って起動する場合のみです。

ロギング・ドライバの選択や設定に関する詳しい情報は ロギング・ドライバの設定 をご覧ください。

docker logs --follow および docker logs -f コマンドは、コンテナの STDOUTSTDERR から新しい出力があれば、 表示し続けます。

負の値の指定や、 --tail に値を付けなければ、全てのログを表示します。

docker logs --timestamp コマンドは RFC3339 Nano timestamp を追加します。例えば 2014-09-16T06:17:46.000000000Z のように、各ログ行に追加されます。タイムスタンプはナノ秒で表示されるため、不要な場合でもゼロが付加されます。

docker logs --details コマンドは、コンテナ作成時に --log-opt で指定した環境変数やラベルなどの追加属性も表示します。

--since オプションは指定した日時以降のログを表示します。指定できる日付は RFC 3339 date、UNIX タイムスタンプ、Go 言語の期間文字(例: 1m30s3h )です。Docker はクライアント側のマシン上からの相対時間を計算します。日付形式のタイムスタンプがサポートしているのは、RFC3339Nano 、 RFC3339 、 2006-01-02T15:04:052006-01-02T15:04:05.9999999992006-01-02Z07:002006-01-02 です。タイムスタンプの最後にタイムゾーンオフセットとして Z+-00:00 が指定されなければ、デーモンはローカルのタイムゾーンを使います。Unix タイムスタンプを 秒[.ナノ秒] で指定すると、秒数は 1970 年 1 月 1 日(UTC/GMT 零時)からの経過時間ですが、うるう秒(別名 Unix epoch や Unix time)を含みません。また、オプションで、9桁以上 .ナノ秒 フィールドは省略されます。 --since オプションは --follow--tail と同時に使えます。

コマンドの使用例は、以下の 使用例のセクション をご覧ください。

オプション

名前, 省略形

デフォルト

説明

--details

ログに提供する詳細情報を表示

--follow , -f

出力をフォローし続ける(表示し続ける)

--since

タイムスタンプ(例: 2013-01-02T13:23:37Z)以降、あるいは相対時刻(例: 42m は 42 分)以降のログを表示

--tail , -n

all

ログの最終から数えた行以降を表示

--timestamps , -t

タイムスタンプを表示

--until

【API 1.35+】タイムスタンプ(例: 2013-01-02T13:23:37Z)まで、あるいは相対時刻(例: 42m は 42 分)までのログを表示

使用例

指定時間までのログを表示

指定した時点までのログを表示するには、次のように実行します。

$ docker run --name test -d busybox sh -c "while true; do $(echo date); sleep 1; done"
$ date
Tue 14 Nov 2017 16:40:00 CET
$ docker logs -f --until=2s test
Tue 14 Nov 2017 16:40:00 CET
Tue 14 Nov 2017 16:40:01 CET
Tue 14 Nov 2017 16:40:02 CET

親コマンド

コマンド

説明

docker

Docker CLI の基本コマンド