停止中のコンテナをまとめて削除する

下記のLinuxコマンドで停止中のコンテナをまとめて削除することができる。
$ docker rm $(docker ps -q -f status=exited)


runコマンドが効いていない(コンテナが作成できない) | Docker Desktop for Windows

Power Shellにて下記のコマンドを実行する。
Invoke-WebRequest https://aka.ms/Debug-ContainerHost.ps1 -UseBasicParsing | Invoke-Expression
参考サイト

イメージをまとめて削除する

$docker rm `docker ps -f "status=exited" -q`

コンテナを再スタートする | docker restart コンテナ名

$ docker restart コンテナ名(または、コンテナID)

$ docker restart 069863c72e56



現在、起動しているDockerのコンテナを一覧表示(停止中のコンテナも一覧表示可)| docker ps

コンテナを一覧表示
$ docker ps

停止中のコンテナも一覧表示する場合
$ docker ps -a

コンテナを停止する | docker stop コンテナID

docker stop コンテナ名もしくはコンテナID
停止するまで5分くらいかかるので注意。(無反応の時間が長く、フリーズと勘違いしてしまう。) 例)コンテナIDが069863c72e56である場合
docker stop 069863c72e56
docker ps -a」コマンドで実行するとコンテナが停止していることが確認できる。STATUSがExited(終了しました)になっている。

docker stopコマンドが反応しない場合、restartコマンドでコンテナを再起動することにより治ることがある。
docker restart 069863c72e56
再スタートする場合
docker start 069863c72e56

どうしても反応しない場合、Dockerアプリ(Docker Desktop)を再起動する。
Windows右下にある常駐アイコン(クジラアイコン)の右クリック、続いて「Restart」をクリックすることにより、再起動できる。


docker runのエラー | no matching manifest for windows/amd64 10.0.18362 in the manifest list entries

Docker Deskctop(Windows)の常駐アイコンから設定することにより修正が可能。

手順

  1. Windowsの右下にある常駐アプリアイコンの欄から、Docker Deskctopを右クリックし、Settingsを選択。
  2. 左メニューから「Demon」を選択。Basicとなっているスイッチを切り替えて「Advanced」にする。
  3. 「"experimental":true」を記述し、Applyボタンを押せば、修正設定終わり。

docker runのエラー | no matching manifest for windows/amd64 10.0.18362 in the manifest list entries

ボリュームは永続するデータの保存先である。
コンテナとボリュームは兄弟関係のようなもの。または、パソコンと外部HDDの関係に似ている。
通常、コンテナ内のデータ(ファイルなど)はコンテナが削除されるとデータも一緒に消える。
データベースなどコンテナを削除してもデータを消したくない場合、ボリュームを用いる。
ボリュームからデータが消えないのはホストPC(普段のPC環境)にデータを保存しているからである。

コンテナでボリュームを用いる

「docker run」でコンテナを作成する際、「-v 〇〇」のような形でボリュームを指定することになる。

docker runでのボリューム指定の例
docker run -it --name test_name -p 8080:80 -v c:/Users/user_xxx/git:/var/www/html test_image:5.6
「-v」でホストPCのディレクトリとコンテナ内のディレクトリを結び付けている。
「c:/Users/user_xxx/git」はホストPCのディレクトリであり、「/var/www/html」はコンテナ内でのディレクトリである。