docker 部署私有仓库registry设置认证和一些常用仓库操作
警告
本文最后更新于 2020-05-30 17:09,文中内容可能已过时。
1.生成认证文件
yum install -y httpd-tools mkdir -p /data/registry_auth/ htpasswd -Bbn test testpass >> /data/registry_auth/htpasswd
2.从官方pull镜像
docker pull registry
3.运行容器
–restart=always:重启docker,自动启动容器
–name=registry:设置容器名称
-v /data/myregistry:/var/lib/registry:将容器的/var/lib/registry目录挂载到本地的/data/myregistry
-v /data/registry_auth/:/auth/:认证文件所在目录
docker run -d \ -p5000:5000 \ --restart=always \ --name=registry \ -v /data/myregistry/:/var/lib/registry \ -v /data/registry_auth/:/auth/ \ -e "REGISTRY_AUTH=htpasswd" \ -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \ -e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" \ registry
下面是无认证的
docker run -d \
-p5000:5000 \
--restart=always \
--name=registry \
-v /data/myregistry/:/var/lib/registry \
registry
4.登陆仓库
docker login 10.0.0.11:5000
5.上传镜像到私有仓库
1)打标签指定仓库地址
docker tag nginx:latest 10.0.0.11:5000/nginx:latest
- 上传镜像
docker push 10.0.0.11:5000/nginx:latest
上传之前需要先在/etc/docker/daemon.json中添加如下内容,添加完后重启docker
“insecure-registries”:[“10.0.0.11:5000”]
6.下载镜像
docker pull 10.0.0.11:5000/nginx:latest
7.查看仓库中的镜像
#os查看镜像
ls /data/myregistry/docker/registry/v2/repositories/
#os查看标签
ls /data/myregistry/docker/registry/v2/repositories/镜像名称/_manifests/tags/
#http查看镜像
http://10.0.0.11:5000/v2/_catalog
#http查看标签
http://10.0.0.11:5000/v2/镜像名称/tags/list
8.删除仓库中的镜像
1)删除nginx镜像目录
rm -fr /data/myregistry/docker/registry/v2/repositories/nginx/
2)垃圾回收
docker exec -it registry registry garbage-collect /etc/docker/registry/config.yml
请我喝杯水
微信号
微信打赏