Docker-private-registries
Docker-プライベートレジストリ
独自のプライベートリポジトリが必要になる場合があります。 リポジトリをDocker Hubでホストしたくない場合があります。 このために、Dockerのリポジトリコンテナー自体があります。 レジストリ用のコンテナをダウンロードして使用する方法を見てみましょう。
ステップ1 *-Docker *run コマンドを使用して、プライベートレジストリをダウンロードします。 これは、次のコマンドを使用して実行できます。
sudo docker run –d –p 5000:5000 –-name registry registry:2
上記のコマンドについて次の点に注意する必要があります-
- *レジストリ*は、プライベートリポジトリをホストするために使用できるDockerによって管理されるコンテナです。
- コンテナによって公開されるポート番号は5000です。 したがって、* – pコマンド*を使用すると、同じポート番号をローカルホストの5000ポート番号にマッピングします。
- Dockerホストで区別するために、レジストリコンテナーに「2」のタグを付けています。
- –d オプションは、コンテナを分離モードで実行するために使用されます。 これは、コンテナがバックグラウンドで実行できるようにするためです
ステップ2 *-レジストリコンテナが実際に実行されていることを確認するために *docker ps を実行しましょう。
レジストリコンテナが実際に実行されていることを確認しました。
ステップ3 *-次に、既存の画像の1つにタグを付けて、ローカルリポジトリにプッシュできるようにします。 この例では、 *centos イメージをローカルで使用できるため、プライベートリポジトリにタグ付けし、 centos というタグ名を追加します。
sudo docker tag 67591570dd29 localhost:5000/centos
上記のコマンドについて次の点に注意する必要があります-
- 67591570dd29 は、 centos 画像の画像IDを指します。
- localhost:5000 はプライベートリポジトリの場所です。
- プライベートリポジトリでは、リポジトリ名に centos のタグを付けています。
ステップ4 *-Docker *push コマンドを使用して、リポジトリをプライベートリポジトリにプッシュします。
sudo docker push localhost:5000/centos
ここでは、 centos イメージを localhost:5000 でホストされているプライベートリポジトリにプッシュしています。
ステップ5 *- *docker rmi コマンドを使用して、 centos のローカルイメージを削除します。 その後、必要な centos イメージをプライベートリポジトリからダウンロードできます。
sudo docker rmi centos:latest
sudo docker rmi 67591570dd29
ステップ6 *-ローカルマシンに *centos イメージがないので、次のDocker pull コマンドを使用して、プライベートリポジトリから centos イメージをプルできます。
sudo docker pull localhost:5000/centos
ここでは、 centos イメージを localhost:5000 でホストされているプライベートリポジトリにプルしています。
システムに画像が表示されると、 centos 画像も表示されます。