Docker と Docker Compose を使用したイメージのタグ付け

Marion Paul Kenneth Mendoza 2023年6月20日
  1. Docker Build を使用した Docker でのイメージのタグ付け
  2. Docker Compose YAML ファイルでのイメージのタグ付け
Docker と Docker Compose を使用したイメージのタグ付け

Docker イメージを作成するときは、わかりやすいわかりやすい名前を付けるのがベスト プラクティスです。 このプロセスにより、特に多数の画像を扱う場合に、画像の識別と管理が容易になります。

この記事では、Docker および Docker Compose でのイメージのタグ付けについて説明します。

Docker Build を使用した Docker でのイメージのタグ付け

Docker は、Dockerfile でのイメージのタグ付けをサポートしていません。 代わりに、docker build コマンドを使用してイメージにタグを付けます。

Docker イメージに名前を付けるには、docker build コマンドの実行時に -t または --tag オプションを使用します。

コード例:

docker build -t my-image .

このコマンドでは、-t オプションでイメージの名前を my-image として指定します。 イメージの名前は、イメージが保存されているレジストリ内で一意である必要があります。

既存の名前でイメージをビルドしようとすると、ビルドは失敗し、エラー メッセージが表示されます。

Docker イメージに名前を付けるときは、名前に逆ドメイン名表記を使用することをお勧めします。 これは、Docker がイメージに階層的で一意の名前空間を自動的に提供するためです。

たとえば、当社のドメインが example.com の場合、Docker イメージに com.example.my-image という名前を付けることができます。

Docker Compose YAML ファイルでのイメージのタグ付け

通常の Docker のように、Docker Compose でイメージにタグを付けることができませんでした。 ただし、唯一の違いは、代わりに docker-compose.yml ファイルで画像にタグを付けることができることです。

YML ファイルの例:

version: "3"
services:
    web:
        image: my-image:v3

ここで、イメージをビルドするために、同じ docker build コマンドを使用し、-t または --tag オプションを使用してイメージの名前とバージョンを指定できます。

コード例:

docker compose build -t my-image:v3 .

このコマンドの -t オプションは、イメージの名前とバージョンを my-image:v3 として指定します。 コマンドの最後のピリオド (.) はビルド コンテキストを確立します。ビルド コンテキストは、Docker Compose のシステム内で YAML ファイルを配置できるディレクトリです。

イメージをビルドするとき、Docker Compose は YAML ファイルを読み取り、イメージ命令を使用して、指定された名前とバージョンをイメージに追加します。 次に、docker images コマンドを使用して、タグ付けされたイメージのリストを表示できます。

コード例:

docker images

出力:

REPOSITORY                  TAG                 IMAGE ID            CREATED             SIZE
my-image                     v3                 abc123              9 days ago          1GB

全体として、Docker イメージにわかりやすい意味のある名前を付けることは、識別と管理を容易にするために不可欠です。 逆ドメイン名表記とタグを使用すると、イメージに階層的で一意の名前空間を作成し、イメージのさまざまなバージョンをすばやく識別できるようになります。

Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn

関連記事 - Docker Image