【Docker】Docker ~ 基本編 / docker コマンド ~

■ はじめに

https://dk521123.hatenablog.com/entry/2020/04/24/160044
https://dk521123.hatenablog.com/entry/2018/04/10/234030
https://dk521123.hatenablog.com/entry/2020/04/11/000000

の続き。

今回は、docker image コマンド を扱う。
また、以下の動画を見ながらやるといいかも。

https://dotinstall.com/lessons/basic_docker

目次

【0】予備知識
 1)Docker における基本操作
 2)コマンドの基本体系
【1】docker image ls
【2】docker image build
【3】docker search
【4】docker image pull
【5】docker image inspect
【6】docker image rm

【0】予備知識

1)Docker における基本操作

* Docker における基本操作は、以下に大別できる。
~~~~~~~~~~
[1] Dockerイメージに関する操作
[2] Dockerコンテナに関する操作
~~~~~~~~~~
=> 「[2] Dockerコンテナに関する操作」については、
  以下の関連記事を参照のこと

Docker ~ 基本編 / docker container コマンド ~
https://dk521123.hatenablog.com/entry/2022/01/20/000000

2)コマンドの基本体系

docker <操作グループ> <操作種類>

コマンド例

コマンド サブコマンド(カテゴリ) 操作 オプション
docker help
docker container run --help/-d/-it
docker container stop
docker container rm
docker image pull
docker image rm

【1】docker image ls

* ローカル上で取得したDockerイメージ一覧表示
* 旧コマンドだと、「docker images」

コマンド例

docker image ls

docker image ls -a

【2】docker image build

* Dockerイメージのビルド

基本構文

docker image build -t [image name]:[tag] [Dockerfile path]

オプション

# オプション 説明
1 -t -t [イメージ名]:[タグ]で指定
2 -f -f [Dockerfile Name]で指定
3 -pull --pull=trueでDockerイメージを再取得

コマンド例
https://dk521123.hatenablog.com/entry/2022/01/14/102719

# より抜粋

# DockerファイルからDockerイメージを作成
docker image build -t hello/world:latest .

【3】docker search

* Dockerイメージの検索

コマンド例

sudo docker search centos | more

【4】docker image pull

* Dockerイメージをレジストリから取得(ダウンロード)
* docker pull

コマンド例

sudo docker pull centos

【5】docker image inspect

* Dockerイメージの詳細設定表示
* 旧コマンド「docker inspect」

コマンド例

sudo docker inspect e934aafc2206

【6】docker image rm

* Dockerイメージ削除
* 旧コマンド「docker rmi [イメージID] (rmi = REmove Image)」

コマンド例

docker image rm hello-world

使用上の注意

* イメージを削除するには、コンテナが停止している必要がある

https://qiita.com/gisuyama7/items/82086b30f6b8e6fc14cf

 => そうしないと以下「エラー内容」が表示

エラー内容

Error response from daemon: conflict: unable to remove repository reference
 "hello-world" (must force) - container aa1a26a9a4aa is using
 its referenced image aa1a26a9a4bb

対応策

# コンテナが起動しているかを一覧表示
docker ps -a

# docker container rm <CONTAINER ID> でコンテナ停止
docker container rm aa1a26a9a4aa

# docker image rm <IMAGE NAME> でDockerイメージを削除
docker image rm hello-world

参考文献

https://qiita.com/zembutsu/items/6e1ad18f0d548ce6c266

関連記事

Docker ~ 基礎知識編 ~
https://dk521123.hatenablog.com/entry/2020/04/24/160044
Docker ~ Windows / 環境構築編 ~
https://dk521123.hatenablog.com/entry/2017/09/23/235818
Docker ~ 基本編 / docker container コマンド ~
https://dk521123.hatenablog.com/entry/2022/01/20/000000
Docker ~ 基本編 / レポジトリに関するコマンド ~
https://dk521123.hatenablog.com/entry/2023/01/21/000000
Docker ~ ファイルをコンテナにコピー ~
https://dk521123.hatenablog.com/entry/2022/04/27/000000
Docker ~ 基本編 / Dockerfile ~
https://dk521123.hatenablog.com/entry/2020/04/14/000000
Docker ~ 基本編 / docker-compose ~
https://dk521123.hatenablog.com/entry/2020/04/11/000000
LocalStack ~ ローカルで疑似AWSを作成する ~
https://dk521123.hatenablog.com/entry/2019/12/14/010524
Amazon ECR ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2020/05/22/165711