2016-08-24 42 views
2

我通过自签名证书配置了不安全的注册表。在提供用户名和密码后,获取错误消息为“来自守护程序的错误响应:获取https://ip地址:5000/v1/users /:x509 :由未知权威机构签署的证书“无法在docker私有存储库中登录

+0

您是否还将证书添加到守护程序?详情请看这里:https://docs.docker.com/docker-trusted-registry/configure/config-security/ – Henry

+0

是的,我们向守护进程添加了证书。 –

回答

2

执行下列步骤来泊坞窗注册表私人证书:

  1. 生成专用SSL证书以下命令。这将创建的证书有两个文件夹domain.crt,domain.key
     
    openssl req -newkey rsa:4096 -nodes -sha256 -keyout certs/domain.key -x509 -days 365 -out certs/domain.crt 
    
  2. 开始搬运工注册表与下面的命令:
     
    docker run -d -p 5000:5000 --restart=always --name registry \ 
    -v `pwd`/certs:/certs \ 
    -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \ 
    -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \ 
    registry:2 
    
  3. 在要拉的图像另一台机器,

    certs/domain.crt
    文件复制到
    /etc/docker/certs.d/<<DockerRegistryServerHostname>>:<<DockerRegistryPort>>/ca.crt
    确保证书文件的名称是ca.crt(而不是domain.crt)。

    例如,如果搬运工注册的IP地址是docker.registry和端口是5000,然后文件夹名称将是

    /etc/docker/certs.d/docker.registry:5000/
  4. 现在运行搬运工拉命令。你不应该面对任何问题。