docker rm¶
オプション¶
名前, 省略形 |
デフォルト |
説明 |
---|---|---|
|
実行中のコンテナを強制的に削除( SIGKILL を使用) |
|
|
指定されたリンクを削除 |
|
|
コンテナに割り当てられた |
使用例¶
デフォルトのブリッジ・ネットワーク上で、 --link
によって指定されたリンクを削除¶
これは、デフォルトのブリッジ・ネットワーク上で、 /webapp
と /redis
コンテナ間を構成するリンクを削除し、この2つのコンテナ間で全てのネットワーク通信を削除します。ただし、ユーザ定義ネットワーク上で --link
が使われている場合には、適用されません。
$ docker rm --link /webapp/redis
/webapp/redis
実行中のコンテナを強制削除¶
このコマンドは、実行中のコンテナを強制的に削除します。
$ docker rm --force redis
redis
これは /link
でリンクされているコンテナを SIGKILL
し、それからコンテナを削除します。
停止したコンテナを全て削除¶
docker container prune
コマンドを使い、全ての停止済みコンテナを削除するか、あるいは、 docker system prune
コマンドで未使用のコンテナに加え、(未使用の)イメージとネットワークのような他の Docker リソースを削除します。
別の方法として、 docker ps
に -q
/ --quiet
オプションを使い、削除するコンテナの一覧リストを生成し、 docker rm
コマンドの引数に、これらリストを使って削除できます。
コマンドの組み合わせは、より柔軟になりますが、シェルが提供する機能に依存するため、
以下の例は docker ps -q
を使い、 --filter status=exited
)すべての ID を表示し、そして、これらコンテナを docker rm
コマンドで削除します。
$ docker rm $(docker ps --filter status=exited -q)
あるいは、 Linux ユーティリティ xargs
を使う場合は、このようになります。
$ docker ps --filter status=exited -q | xargs docker rm
コンテナと、そのボリュームを削除¶
$ docker rm -v redis
redis
このコマンドはコンテナと、コンテナに関連づけられた全ボリュームを削除します。ただし、ボリュームに名前を指定していた場合は、このコマンドでは削除されません。
コンテナと指定したボリュームを削除¶
$ docker create -v awesome:/foo -v /bar --name hello redis
hello
$ docker rm -v hello
この例では、ボリューム /foo
は以後も残り続けますが、ボリューム /bar
は削除します。同様に --volumes-from
で継承関係にあるボリュームも保持します。