docker tagコマンドの使い方(実例で解説)

docker tagコマンド解説

 本記事はDocker ver24.0.7の環境で確認しています。

 このコマンドは、Dockerイメージに別名を付けることができます。

 Dockerイメージには、各々を識別するためにイメージ名とイメージIDが付与されてます。

 docker tagコマンドで変更可能なのはイメージ名です。

 例えば、「testimage:latest」という名前のDockerイメージに、「testimage:v1.0」や「testapp:v1」などの名前を設定することが可能です。

docker tagコマンドのフォーマットとオプション

フォーマット

docker tag [既存Dockerイメージ名orイメージID] [付与するDockerイメージ名]

主なオプション一覧

 docker tagコマンドにはオプションはありません。

コマンド例

$ docker tag 05188b417f30 myimage:v7.2
$ docker tag centos:latest myimage2:v7.3

docker tagコマンドの主な使い方

 以下で実例をまじえたコマンドの使い方を解説していきたいと思います。

実例では、Ubuntuの公式イメージにより起動したコンテナ(testvm)を使用します。

コンテナは「docker run -dit --init --name testvm ubuntu」で起動します。

※「--rm」オプションを付けておりませんので、ご利用後はコンテナ削除をお忘れなく。

基本事項の解説

 Dockerイメージには、各々を識別するためのイメージIDとそれに紐づいたイメージ名が付与されています。

 イメージIDは物理的なDockerイメージに付けられたユニークIDでして、物理的なDockerイメージとイメージIDは1対1の関係になります。

 イメージ名は、Dockerイメージに付与される名前なのですが、1つの物理的なDockerイメージに対して複数付与することが可能です。

 Linuxのファイルシステムで使いますシンボリックリンクと似ています。

Dockerイメージに別名を付与する

 Dockerホスト内にCentOSの公式Dockerイメージがあります。

$ docker images
REPOSITORY   TAG     IMAGE ID      CREATED       SIZE
centos       latest  05188b417f30  4 months ago  196.8 MB

 このDockerイメージ(IMAGE IDが05188b417f30)に「myimage:v7.2」というタグを付けてみます。

 以下のコマンドを実行します。

$ docker tag 05188b417f30 myimage:v7.2

 docker imagesコマンドで確認します。

$ docker images
REPOSITORY    TAG     IMAGE ID      CREATED       SIZE
centos        latest  05188b417f30  4 months ago  196.8 MB
myimage       v7.2    05188b417f30  4 months ago  196.8 MB

 「IMAGE ID」は必ずユニークなIDが付与されますので、この2つは同じDockerイメージということになります。

 よって、Dockerイメージを指定する際に、「centos:latest」、「myimage:v7.2」のどれを指定しても、同じDockerイメージが参照されることになります。

※Dockerイメージ名のフォーマットは「リポジトリ名:タグ名」です。タグ名を省略した場合は「latest」が自動で付与されます

 別名を付与するDockerイメージの指定は、IMAGE IDではなく、Dockerイメージ名を指定することも、もちろん可能です。

$ docker tag centos:latest myimage2:v7.3

 docker imagesコマンドで確認します。

$ docker images
REPOSITORY   TAG     IMAGE ID      CREATED       SIZE
centos       latest  05188b417f30  4 months ago  196.8 MB
myimage2     v7.3    05188b417f30  4 months ago  196.8 MB
myimage      v7.2    05188b417f30  4 months ago  196.8 MB

Dockerイメージに付与したタグ(別名)を削除する

 docker tagコマンドで付与したタグを削除する場合は、docker rmiコマンドを使用します。

 docker rmiコマンドは、Dockerイメージを削除するためのコマンドですが、タグ削除にも使います。

 docker rmiコマンドに関しましては別記事「docker rmiコマンドの使い方(実例で解説)」をご参照下さい。

おわりに

  以上でdocker tagコマンドの紹介を終わります。

 ご指摘、ご要望などが御座いましたらコメントいただけるとうれしいです。

 他のDockerコマンドの実例付紹介記事は、本サイト内の別記事「Dockerのコマンドの一覧(オリジナルな実例付き)」をご参照ください。

 ご訪問ありがとうございました!

コメント