创建认证授权的docker私有仓库
安装docker 简单方式,daocloud提供的方式:curl -sSL https://get.daocloud.io/docker | sh官网的方式比较慢,daocloud每3小时会去同步更新官方的源,所以采用这样的方式安装还是比较靠谱的
安装docker-compose
sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.12.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
创建docer私有仓库
生成签名证书
一般情况下,证书只支持域名的访问,要使他支持ip访问,需要修改如下配置
sudo vim /etc/ssl/openssl.cnf
加入如下内容:
[ v3_ca ]
subjectAltName = IP:192.168.xx.xx
生成证书
openssl req -newkey rsa:4096 -nodes -sha256 -keyout certs/domain.key -x509 -days 365 -out certs/domain.crt
生成密码
sudo docker run --entrypoint htpasswd registry:2 -Bbn username password > auth/htpasswd
私有仓库搭建
sudo 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 /home/xxx/docker/registry:/var/lib/registry -v `pwd`/certs:/certs -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key registry:2
私有仓库使用
mkdir /etc/docker/certs.d/192.168.xx.xx:5000
sudo cp ~/docker/certificate/certs/domain.crt ca.crt
sudo docker login
然后输入用户名和密码
PS:在所有需要使用私有仓库的地方都需要做上述步骤的授权认证
页:
[1]