docker network prune

docker network prune

読む時間の目安: 2 分

説明

未使用のネットワークをすべて削除します。

API 1.25 以上 
このコマンドを利用するには、クライアントとデーモンの API はともに、最低でも
1.25
である必要があります。
クライアント上においてdocker versionコマンドを実行して、クライアントとデーモンの API バージョンを確認してください。

利用方法

$

docker network prune

[

オプション]

追加説明

未使用のネットワークをすべて削除します。
未使用のネットワークとは、どのコンテナーからも参照されていないネットワークのことです。

本コマンドの利用例については、以下に示す 利用例の節 を参照してください。

オプション

名前/省略形
デフォルト
説明

--filter

フィルター値を定めます。(たとえば ‘until=<timestamp>’)

--force , -f

確認のためのプロンプトを表示しません。

利用例

$

docker network prune

WARNING! This will remove all custom networks not used by at least one container. Are you sure you want to continue? [y/N] y Deleted Networks: n1 n2

フィルター検索

フィルターフラグ(--filter)の指定書式は「キー=値」というものです。
複数のフィルターが必要な場合は、フラグを複数指定します。
(たとえば --filter "foo=bar" --filter "bif=baz" など。)

現在サポートされているフィルターは以下のとおりです。

  • until (<timestamp>) – 指定された時刻より以前に生成されたネットワークのみ削除します。
  • label (label=<key>, label=<key>=<value>, label!=<key>, label!=<key>=<value>) – 指定されたラベル(label!=... が用いられている場合は、そのラベル以外)が用いられているネットワークのみ削除します。

until フィルターは Unix 時間から生成されるタイムスタンプや日付、Go 言語の時間文字列 (たとえば 10m, 1h30m)を、デーモンマシンの時刻との相対的な差異によって計算されます。
タイムスタンプから生成される日付の書式として、RFC3339Nano、RFC3339、2006-01-02T15:04:052006-01-02T15:04:05.9999999992006-01-02Z07:002006-01-02 などがサポートされます。
タイムスタンプの最後に Z やタイムゾーンオフセット +-00:00 が指示されていなかった場合は、デーモンが利用しているタイムゾーンが用いられます。
Unix 時間を指定する場合は seconds[.nanoseconds]([秒.ナノ秒])の書式とします。
ここで秒には 1970 年 1 月 1 日(UTC/GMT の真夜中)からの経過秒数値を指定し、うるう秒を含めません(Unix エポックまたは Unix タイムとも言われる)。
そしてナノ秒には、8桁以下の秒の少数値を指定します。

label フィルターは 2 つの書式をとります。
1 つは label=...label=<key> または label=<key>=<value>)であり、ここに指定されたラベルを持ったネットワークが削除されます。
もう 1 つは label!=...label!=<key> または label!=<key>=<value>)であり、ここに指定されたラベル以外を持ったネットワークが削除されます。

以下の例では生成から 5 分以上経過したネットワークを削除します。
ただしシステムネットワークである bridgehostnone は取り除かれる(prune される)ことはありません。

$

docker network

ls

NETWORK ID NAME DRIVER SCOPE 7430df902d7a bridge bridge local ea92373fd499 foo-1-day-ago bridge local ab53663ed3c7 foo-1-min-ago bridge local 97b91972bc3b host host local f949d337b1f5 none null local

$

docker network prune

--force

--filter

until

=

5m

Deleted Networks: foo-1-day-ago

$

docker network

ls

NETWORK ID NAME DRIVER SCOPE 7430df902d7a bridge bridge local ab53663ed3c7 foo-1-min-ago bridge local 97b91972bc3b host host local f949d337b1f5 none null local

上位コマンド

コマンド
説明

docker network
ネットワークを管理します。