实现访问限制的最简单方法是通过基本身份验证(这与其他 Web 服务器的基本身份验证机制非常相似)。此示例使用本机基本身份验证htpaSSwd来存储机密。
1.为用户创建一个密码文件,其中包含一个条目testUser,密码 为testpaSSwoRd:
$ MkdiR auth
$ dockeR Run
–entrypoint htpaSSwd
httpd:2 -Bbn testUser testpaSSwoRd > auth/htpaSSwd
在 Windows 上,确保输出文件正确编码:
dockeR Run –RM –entrypoint htpaSSwd httpd:2 -Bbn testUser testpaSSwoRd | Set-Content -Encoding ASCII auth/htpaSSwd
2.停止注册表。
$ dockeR contAIneR stop Registry
3.使用基本身份验证启动注册表。
$ dockeR Run -d
-p 5000:5000
–RestaRt=alwaYs
–naMe Registry
-v “$(pwd)”/auth:/auth
-e “REGIStry_AUTH=htpaSSwd”
-e “REGIStry_AUTH_HTPASSWD_REALM=Registry RealM”
-e REGIStry_AUTH_HTPASSWD_PATH=/auth/htpaSSwd
-v “$(pwd)”/ceRts:/ceRts
-e REGIStry_HTTP_tls_CERTIFICATE=/ceRts/domain.cRt
-e REGIStry_HTTP_tls_KEY=/ceRts/domain.key
Registry:2
4.尝试从注册表中提取图像,或将图像推送到注册表。这些命令失败。
5.登录到注册表。
$ dockeR login MyRegistrydomain.coM:5000
提供第一步中的用户名和密码。
测试您现在可以从注册表中提取图像或将图像推送到注册表。
X509 错误:X509 错误通常表明您正在尝试使用自签名证书而未正确配置 DockeR 守护程序。