Docker レジストリ

ご用心

訳者注:Docker Registry は今後 Docker Distribution https://github.com/docker/distribution に統合予定です。そのため、ドキュメントの更新は停止しており、将来的にここに書かれている情報が古くなる可能性があります。

これは何ですか

レジストリ(Registry)とは、ステートレス(処理状態を把握しない)であり、サーバ・サイドのアプリケーションを大きくスケールさせるため、Docker イメージを保管・提供をします。レジストリは Apache ライセンス 許諾のオープン・ソースです。

何のために使うのですか?

次のことをしたい場合、レジストリを使ったほうが良いでしょう。

  • イメージの保管される場所を厳密に管理したい
  • イメージ配布パイプラインを、自分で完全に管理したい
  • 組織内の開発ワークフローに一致するように、イメージ・ストレージと配布を統合

代替手法

ユーザがメンテナンスをしたくないのであれば、すぐにでも使える方法が Docker Hub の利用でしょう。無料で使え、レジストリを預かってくれ、追加機能(組織用アカウント、自動構築、など)があります。

レジストリの商用サポート版を探しているのであれば、 Docker トラステッド・レジストリ(Trusted Registry) をご覧ください。

動作条件

レジストリは Docker エンジン バージョン 1.6.0 以上 で動作します。どうしても古い Docker バージョンで動かす必要があれば、 古い python レジストリ をご覧ください。

TL;DR

レジストリを開始する方法

docker run -d -p 5000:5000 --name registry registry:2

Docker Hub からのイメージの取得(あるいは構築)

docker pull ubuntu

自分のレジストリ上のイメージを指定

docker tag ubuntu localhost:5000/myfirstimage

送信する

docker push localhost:5000/myfirstimage

また取得する

docker pull localhost:5000/myfirstimage

レジストリを停止し、全てのデータを削除する。

docker stop registry && docker rm -v registry

次へ

これで レジストリの詳細な紹介 を読むか、 デプロイ方法 のページに直接ジャンプしてください。

参考

Official Repositories on Docker Hub
https://docs.docker.com/docker-hub/official_repos/