0

我有一个 docker 发行版 v2 注册表,我将其用作镜像。它使用 Docker for Mac Community Edition 17.03.1-ce-mac12 (17661) 工作,但是从 docker-machine 节点访问它时出现“证书由未知权威签名”错误。设置如下:

openssl req -newkey rsa:4096 -nodes -sha256 -keyout "/certs/domain.key" -x509 -days "365" -out "/certs/domain.cert" -subj /CN=“192.168.17.11”

sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain $DIR/devenv/domain.cert
docker run -d --restart=always -p 6000:5000 --name registry-mirror -v /Volumes/Data/registry_cache:/var/lib/registry registry:2 /var/lib/registry/config.yml

docker pull busybox

curl -k https://192.168.17.11:6000/v2/_catalog

{"repositories":["library/busybox"]}

docker-machine create -d virtualbox —engine-registry-mirror https://192.168.17.11:6000 mynode

docker-machine ssh mynode "sudo mkdir -p /etc/docker/certs.d/192.168.17.11:6000 && sudo chmod -R 777 /etc/docker/certs.d"
docker-machine scp $DIR/devenv/domain.cert mynode:/etc/docker/certs.d/192.168.17.11:6000/domain.cert
docker-machine scp $DIR/devenv/domain.key mynode:/etc/docker/certs.d/192.168.17.11:6000/domain.key
docker-machine restart mynode

eval $(docker-machine env mynode)
docker info

… 注册表镜像:

https://192.168.17.11:6000/

docker pull busybox

cat /var/log/docker.log

… time="2017-05-30T12:33:01.593516721Z" level=debug msg="尝试从https://192.168.17.11:6000/ v2 拉出busybox"

time="2017-05-30T12:33:02.539391694Z" level=warning msg="获取 v2 注册表时出错:获取https://192.168.17.11:6000/v2/ : x509: 由未知机构签署的证书"

我不确定如何让 boot2docker VM 接受 docker duplication v2 注册表镜像使用的证书。其他示例将证书颁发机构的 ca.crt 复制到 /etc/certs.d/,但此证书是自签名的。

4

1 回答 1

0

重新启动托管此设置的 OSX 盒子似乎已经解决了这个问题,现在,等待时间来确定它,这已经足够好了。

于 2017-05-31T14:07:29.603 回答