私有Docker注册表令牌授权

时间:2019-04-06 11:44:15

标签: docker authorization token docker-registry

我当前正在尝试创建启用令牌授权的私有Docker注册表。但是,当我尝试授权由授权服务器创建的令牌时,我遇到了问题。

我已经跟踪了一些资源,并设法使用htpasswd方法(https://the.binbashtheory.com/creating-private-docker-registry-2-0-with-token-authentication-service/)使其工作。但是我想要使用令牌auth代替htpasswd。

我在docker run命令配置中实现了以下这些块(在https://myregistry.com上):

```
docker run -p 5000:5000 --restart=always --name registry \
-v `pwd`/docker/registry/config.yml:/etc/docker/registry/config.yml \
-v `pwd`/nginx/fullchain.pem:/etc/docker/registry/fullchain.pem \
-v `pwd`/nginx/privkey.pem:/etc/docker/registry/privkey.pem \
-e REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY=/data \
-e REGISTRY_STORAGE_DELETE_ENABLED=true \
-e REGISTRY_AUTH=token \
-e REGISTRY_AUTH_TOKEN_REALM=https://auth.mysite.com/api/docker_success \
-e REGISTRY_AUTH_TOKEN_SERVICE="Docker registry" \
-e REGISTRY_AUTH_TOKEN_ISSUER="Auth service" \
-e REGISTRY_AUTH_TOKEN_ROOTCERTBUNDLE=/etc/docker/registry/fullchain.pem \
-e REGISTRY_HTTP_TLS_CERTIFICATE=/etc/docker/registry/fullchain.pem \
-e REGISTRY_HTTP_TLS_KEY=/etc/docker/registry/privkey.pem \
registry:2
```

注册表启动后,我从另一台随机PC上运行docker login myregistry.com:5000,并询问用户名和密码。当我输入随机用户名和https://auth.mysite.com/api/docker_success生成的正确令牌时,它会抛出401未经授权,并且我会在注册表的日志中看到msg =“错误授权上下文:需要授权令牌”条目。我不明白我期望从烧瓶https://auth.mysite.com/api/docker_success向客户端返回令牌作为响应的哪种类型的令牌。我应该从https://auth.mysite.com/api/docker_success返回什么类型的信息?

0 个答案:

没有答案