ここではよく使うDockerコマンドをメモしておきます。
目次
1.イメージ関係
ローカルに存在するDockerイメージのリストを表示
docker images
- ローカルに存在するDockerイメージのリストを表示します。
指定したDockerイメージを削除
docker rmi <イメージID>
- 指定したDockerイメージを削除します。
すべての未使用のイメージ(danglingを含む)を削除
docker image prune -a
danglingなイメージだけを削除
docker image prune
参照
Dockerイメージをダウンロード
docker pull <イメージ名>
- Dockerイメージをダウンロードします。
Dockerfileを元に新しいイメージをビルド
docker build -t <タグ名> <Dockerfileのあるディレクトリ>
- Dockerfileを基に新しいイメージをビルドします。
2.コンテナ関係
新しいコンテナを起動
2024-09-03 更新docker run <イメージ名>
<イメージ名>
のイメージを基に新しいコンテナを作成し、そのコンテナを実行します。
コンテナを起動(コンテナが停止した後、自動的にコンテナを削除)
2024-09-03 更新docker run --rm <イメージ名>
- 例
例)ubuntuのイメージから一時的にコンテナを作成しechoした後すぐに削除
docker run --rm ubuntu echo "Hello, World!"
コンテナに環境変数を渡して起動
2024-09-03 更新docker run -e VARIABLE_NAME=value <イメージ名>
現在実行中のコンテナのリストを表示
docker ps
- 現在実行中のコンテナのリストを表示します。
停止中のコンテナも含めて全てのコンテナのリストを表示
docker ps -a
-a
を使用すると、停止中のコンテナも含めて全てのコンテナを表示します。
指定したコンテナを停止
docker stop <コンテナID>
- 指定したコンテナを停止します。
指定したコンテナを削除
docker rm <コンテナID>
- 指定したコンテナを削除します。
参照
実行中のコンテナでコマンドを実行
docker exec -it <コンテナID> <コマンド>
- 実行中のコンテナでコマンドを実行します。
例:コンテナ内でbashシェルを開始
docker exec -it <コンテナID> /bin/bash
コンテナのログを表示
docker logs <コンテナID>
- コンテナのログを表示します。
3. 応用
すべての未使用のリソースを削除
2024-07-29 更新-
使用していないDockerリソース(停止したコンテナ、タグなしイメージ、未使用ネットワーク)を一括で削除するには以下のコマンドが便利です。
docker system prune
-
ボリュームも含めて全てのリソースを削除する場合。
docker system prune -a --volumes
参照
参考
UnusedとUnused (dangling)
Unused: このリソースは現在どのコンテナでも使用されていないが、将来的に再利用可能な状態を指します。
例えば、特定のイメージから新たにコンテナを作成することが可能です。
例えば、特定のイメージから新たにコンテナを作成することが可能です。
Unused (dangling): これは特にイメージに関連して使用される用語で、新しいバージョンのイメージがビルドされた後に
古いバージョンのイメージが残され、それがどのタグにも関連付けられていない状態を指します。
これらは通常、再利用されることはなく、ディスクスペースを占有しているだけなので、安全に削除することができます。
古いバージョンのイメージが残され、それがどのタグにも関連付けられていない状態を指します。
これらは通常、再利用されることはなく、ディスクスペースを占有しているだけなので、安全に削除することができます。