配置带用户权限的docker registry v2
2023-09-14 08:58:26 时间
v1版本的docker registry用nginx配置,v2版本的用nginx有些问题,客户端总是会请求到v1/下面去,
以下从 http://blog.csdn.net/felix_yujing/article/details/51564739 转过来的,亲测可用。
配置带用户权限的registry
到上面为止,registry已经可以使用了。如果想要控制registry的使用权限,使其只有在登录用户名和密码之后才能使用的话,还需要做额外的设置。
registry的用户名密码文件可以通过htpasswd来生成:
- mkdir /opt/registry-var/auth/
- docker run --entrypoint htpasswd registry:2.4.1 -Bbn felix felix >> /opt/registry-var/auth/htpasswd
上面这条命令是为felix用户名生成密码为felix的一条用户信息,存在/opt/registry-var/auth/htpasswd文件里面,文件中存的密码是被加密过的。
使用带用户权限的registry时候,容器的启动命令就跟上面不一样了,将之前的容器停掉并删除,然后执行下面的命令:
- docker run -d -p 5000:5000 --restart=always \
- -v /opt/registry-var/auth/:/auth/ \
- -e "REGISTRY_AUTH=htpasswd" \
- -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
- -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
- -v /opt/registry-var/:/var/lib/registry/ \
- registry:2.4.1
这时,如果直接想查看仓库信息、pull或push都会出现权限报错。必须先使用docker login 命令来登录私有仓库:
- docker login 192.168.0.100:5000
根据提示,输入用户名和密码即可。如果登录成功,会在/root/.docker/config.json文件中保存账户信息,这样就可以继续使用了。
相关文章
- Centos7上安装docker
- Docker 简单部署 ElasticSearch
- centos ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running?
- docker专题(2):docker常用管理命令(下)
- Docker for windows 或者 docker-ce 加速下载镜像配置
- Jenkins - 以Docker方式启动Jenkins
- [Docker] Container & image (docker run)
- 配置Docker以使用Kata Containers
- docker命令:删除所有为stop状态的docker容器
- 关于docker开放2375端口失败的原因及解决办法
- [ELK] 生产环境使用 Elasticsearch Docker 镜像的优化选项
- SAP ABAP Platform 1909最新版的 docker 镜像
- 最简单的Docker镜像教程:从头基于空镜像scratch创建一个新的Docker镜像
- 【云原生之Docker】使用docker部署talebook个人图书管理平台
- 【云原生之Docker实战】容器的资源限制使用方法
- 使用MSF利用永恒之蓝漏洞远程控制主机——直接使用MSF即可RCE,我++,在docker里没有完成,GG!
- 【PostgreSQL】通过docker的方式运行部署PostgreSQL与go操作数据库
- Docker学习笔记13:docker使用之Compose
- Docker 安装配置Crowd