Docker Registry v2 でプライベートリポジトリ(プライベートレジストリ)を立てる

1. Docker Registry v2

2016年7月6日現在、Docker Registry を latest で pull しても v1 のイメージが落ちてくるようです。ですが、ここでは v2 を明示的に落として使用した場合のプライベートリポジトリ(プライベートレジストリ)の立て方を簡単に記します。

2. v2 か v2.4 か v2.4.1 か

Docker Hub に行くと、Docker Registry の v2 のバージョンは RC を含めいくつかあります

ここでは v2.4.1 を落としました。

# docker pull registry:2.4.1

3. 落とした Docker Registry を run する

落とした v2.4.1 の Docker Registry を run します。その際、ポートの指定と、永続的な保存先となるローカルフォルダの指定をします。インターネット上のフォルダを指定する場合は認証などが必要でしょう。

# docker run -p 5000:5000 -d -v /var/registry:/var/lib/registry registry:2.4.1

4. 扱うイメージにタグ付けをする

ローカルで push や pull をするイメージに、そのための指定をするタグ付けをしてやります。以下の例では、手元の ubuntu:latest のイメージにタグ付けをしています。

# docker tag ubuntu:latest localhost:5000/ubuntu

5. push や pull をする

あとは push や pull をしてやれば OK です。

# docker push localhost:5000/ubuntu

6. 登録されているイメージ一覧の表示

簡易的ですが、例えば次のようなアドレスにアクセスすれば一覧が返ってきます。その他の詳細な API については公式のリファレンスを確認してください。

http://localhost:5000/v2/_catalog

7. 注意点

v2.4.1 ではなく v2 の Docker Registry のイメージですと、「3.」のディレクトリが「/var/lib/registry」ではなく「/tmp/registry-dev」のようです。

Powered by はてなブログ