はじめに
Docker レジストリは、Docker イメージを保存、管理、配布するためのプラットフォームです。Docker Hub などのクラウドベースのサービスは手軽に利用できますが、利用制限やセキュリティポリシー上の制約が生じることがあります。このチャレンジでは、独自のローカル Docker レジストリを構築する手順を体験します。これにより、イメージの管理権限を完全に掌握し、ネットワーク環境に依存しない開発フローを実現できます。
Docker レジストリの構築
このステップでは、ローカル環境に Docker レジストリをセットアップします。ここでは、Docker 公式が提供しているレジストリ用イメージを利用します。
目標
Docker レジストリを起動し、利用可能な状態にすること。
完了イメージ
レジストリを構築する手順は以下の通りです:
registryイメージをプル(取得)します。

- コンテナ内のデータを永続化しやすくするため、
/home/labexパスにdockerregistryという名前のディレクトリを作成します。

registryイメージを使用してmy-registryという名前のコンテナを実行します。その際、ポートをマッピングし、作成したdockerregistryディレクトリをボリュームとしてマウントしてデータを保存できるようにします。

curlコマンドを使用して、レジストリが正常に応答するか確認します。

このステップが完了すると、ローカルマシン上で Docker レジストリのインスタンスが稼働した状態になります。
Docker レジストリへのイメージのプッシュ
Docker レジストリが稼働したので、実際に使ってみましょう。このステップでは、サンプルとなる Docker イメージを用意し、構築したローカルレジストリにプッシュ(送信)します。
目標
ローカル Docker レジストリにイメージをプッシュすること。
完了イメージ
イメージをプッシュする手順は以下の通りです:
- Docker Hub から
hello-worldイメージをプルします。

- 自分のレジストリ用として、
hello-worldイメージに新しいタグを付けます。

- タグ付けした
hello-worldイメージをローカルレジストリにプッシュします。

このステップが完了すると、ローカル Docker レジストリ内にイメージが保存されます。
Docker レジストリからのイメージのプル
レジストリが稼働し、サンプルイメージも保存されました。最後のステップでは、ローカルレジストリからイメージをプル(取得)する方法を確認します。
目標
構築したレジストリからイメージをプルすること。
完了イメージ
ローカルレジストリからイメージをプルする手順は以下の通りです:
docker rmiコマンドを使用して、ローカルレジストリ用にタグ付けしたhello-worldイメージのローカルコピーを一旦削除します。

- ローカル Docker レジストリからイメージをプルします。

- プルしたイメージからコンテナを実行し、正しく動作するか確認します。

このステップが完了すると、独自のレジストリからイメージを取得して利用できることが証明されます。
まとめ
このチャレンジでは、ローカル Docker レジストリの構築、イメージのプッシュ、そしてプッシュしたイメージのプルという一連の操作を学びました。ローカルレジストリを活用することで、イメージ管理の柔軟性が高まり、オフライン環境での開発もスムーズになります。チャレンジ完了、おめでとうございます!



