ディレクトリ
参考ます。https://yeasy.gitbooks.io/docker_practice/content/repository/registry.html
プライベート倉庫作業
直接構築ステップを保存するためにドッキングウィンドウの方法でミラーを実行し、レジストリ
$ docker run -d \
-p 5000:5000 \
-v /opt/data/registry:/var/lib/registry \
registry
TIPS:
次のようにデータディレクトリとライブラリディレクトリには、自分自身を設定し、あるいは民間の倉庫に名前を取ることができます。
$ docker run -d -p 5000:5000 --privileged=true -v /home/.registry/data:/home/.registry/lib --restart=always --name pirvi_registry registry
あなたが再起動したい場合は名前を指定した後、次のコマンドを使用することができます。
$ docker restart pirvi_registry
次のようにあなたはまだ先に同じパラメータを使用して--name場合、実行している場合は、新しいコンテナを始めると同等のものを実行して、コンテナIDは、変更され、エラーが報告されます。
docker: Error response from daemon: Conflict. The container name "/pirvi_registry" is already in use by container "194a22f33b1af366f036cc7691a1d1d918e55150bbc170e8e8fd171e52f0f273". You have to remove (or rename) that container to be able to reuse that name.
あなたがドッキングウィンドウの再起動[名]コマンドを使用してコンテナを再起動したいのであれば。
アップロード
民間の倉庫にミラー
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
ubuntu latest ba5877dc9bec 6 weeks ago 192.7 MB
$ docker tag ubuntu:latest 127.0.0.1:5000/ubuntu:latest
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
ubuntu latest ba5877dc9bec 6 weeks ago 192.7 MB
127.0.0.1:5000/ubuntu:latest latest ba5877dc9bec 6 weeks ago 192.7 MB
検証
$ docker image rm 127.0.0.1:5000/ubuntu:latest
$ docker pull 127.0.0.1:5000/ubuntu:latest
Pulling repository 127.0.0.1:5000/ubuntu:latest
ba5877dc9bec: Download complete
511136ea3c5a: Download complete
9bad880da3d2: Download complete
25f11f5fb0cb: Download complete
ebc34468f71d: Download complete
2318d26665ef: Download complete
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
127.0.0.1:5000/ubuntu:latest latest ba5877dc9bec 6 weeks ago 192.7 MB
ビュー
民間の倉庫鏡を見ます
$ curl 127.0.0.1:5000/v2/_catalog
{"repositories":["ubuntu","nginx"]}
ミラーの特定のバージョンを見ます
[root@kub2 ~]# curl 127.0.0.1:5000/v2/nginx/tags/list
{"name":"nginx","tags":["1.7.9"]}
誰かが既製のスクリプトを書いた:倉庫ミラースクリプトをチェック
民間倉庫のミラーを削除します
$ curl -I -X DELETE http://127.0.0.1:5000/v2/fbgweb/manifests/sha256:6a67ba482a8dd4f8143ac96b1dcffa5e45af95b8d3e37aeba72401a5afd7ab8e
あなたはどちらのミラーSHA256を削除するミラーを介してドッキングウィンドウのプル後プリントで見ることができます。
$ docker push 127.0.0.1:5000/radial/busyboxplus:curl
The push refers to repository [127.0.0.1:5000/radial/busyboxplus]
5f70bf18a086: Mounted from nginx
430380561a4f: Pushed
165264a81ac2: Pushed
curl: digest: sha256:ef538eae80f40015736f1ee308d74b4f38f74e978c65522ce64abdf8c8c5e0d6 size: 1765
ガーベジコレクション
民間の倉庫コンテナを見ます
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
194a22f33b1a registry "/entrypoint.sh /etc…" 4 days ago Up 4 days 0.0.0.0:5000->5000/tcp pirvi_registry
TTYの入った容器にログオンします
$ docker exec -it 194a22f33b1a /bin/sh
ガベージコレクションのコマンド
~ # registry garbage-collect /etc/docker/registry/config.yml
31 blobs marked, 5 blobs eligible for deletion
blob eligible for deletion: sha256:5e7cf06c8745d0985f94191c60aad8b87371c8a674162525bff0efccdb805931
INFO[0000] Deleting blob: /docker/registry/v2/blobs/sha256/5e/5e7cf06c8745d0985f94191c60aad8b87371c8a674162525bff0efccdb805931 go.version=go1.7.6 instance.id=c38f4c35-9914-4b77-a59f-ea584137fae0
...