Debuginfo

思考とアウトプット

Docker private registryの設定方法

仕様変更が頻繁にあるようです。 現時点(2013 3 13)でのPrivate registryの建て方です。

# localhost:5000にマップして、/tmp/registryをホストにマウント。
# registryというイメージをpullして使う
$ docker run -d -p 5000:5000 -v /tmp/registry:/tmp/registry registry

# 保存するイメージのIDをdocker imagesで確認して、タグ付け
$ docker tag 74690429d72e localhost:5000/base

# push!
$ docker push localhost:5000/base
The push refers to a repository [localhost:5000/base] (len: 1)
Sending image list
Pushing repository localhost:5000/base (1 tags)
74690429d72e: Image successfully pushed 
Pushing tag for rev [74690429d72e] on {http://localhost:5000/v1/repositories/base/tags/latest}

ちなみに/tmp/registryは下記のようなツリーを作り、

$ find /tmp/registry/
/tmp/registry/
/tmp/registry/images
/tmp/registry/images/74690429d72efaa9516a09f61cef62806c5ceb9cf6436a0a642f5b53dc0b3403
/tmp/registry/images/74690429d72efaa9516a09f61cef62806c5ceb9cf6436a0a642f5b53dc0b3403/json
/tmp/registry/images/74690429d72efaa9516a09f61cef62806c5ceb9cf6436a0a642f5b53dc0b3403/_checksum
/tmp/registry/images/74690429d72efaa9516a09f61cef62806c5ceb9cf6436a0a642f5b53dc0b3403/layer
/tmp/registry/images/74690429d72efaa9516a09f61cef62806c5ceb9cf6436a0a642f5b53dc0b3403/ancestry
/tmp/registry/images/74690429d72efaa9516a09f61cef62806c5ceb9cf6436a0a642f5b53dc0b3403/_files
/tmp/registry/repositories
/tmp/registry/repositories/library
/tmp/registry/repositories/library/base
/tmp/registry/repositories/library/base/json
/tmp/registry/repositories/library/base/tag_latest
/tmp/registry/repositories/library/base/_index_images

サイズはバーチャルの1/4ぐらい。

$ du -sh /tmp/registry/
134M    /tmp/registry/