Registry私有仓库部署
1、创建密钥
export CERTKEY=/home/k8s/middleware/registry/certs
mkdir -p $CERTKEY
openssl req -newkey rsa:4096 -nodes -sha256 -keyout $CERTKEY/domain.key -x509 -days 365 -out $CERTKEY/domain.crt
按提示填空,也可以一路回车
[gestep@k8s-master certs]$ openssl req -newkey rsa:4096 -nodes -sha256 -keyout domain.key -x509 -days 365 -out domain.crt
Generating a 4096 bit RSA private key
.................++
................................................................................++
writing new private key to 'domain.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:SC
Locality Name (eg, city) [Default City]:CD
Organization Name (eg, company) [Default Company Ltd]:ND
Organizational Unit Name (eg, section) []:12
Common Name (eg, your name or your server's hostname) []:zjyn.registry.com
Email Address []:
[gestep@k8s-master certs]$ ls
domain.crt domain.key
2、以下动作所有节点都要执行(包括master)
slave节点需要把 “domain.crt” scp到服务器
mkdir -p /etc/docker/certs.d/ynu.registry.com:8880
cp $CERTKEY/domain.crt /etc/docker/certs.d/ynu.registry.com:8880/ca.crt
sudo systemctl restart docker
3、创建运行脚本 run-registry.sh
#!/bin/bash
docker stop registry && docker rm -f registry
docker run -d \
--restart=always --name registry \
-v /home/registry-images:/var/lib/registry \
-v /home/k8s/middleware/registry/certs:/certs \
-e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \
-e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \
-p 8880:5000 \
registry:2.8.1
创建账号密码(这一步不一定对忘记当时咋弄的了)
docker run --entrypoint htpasswd registry:2.8.1 \
-Bbn admin YooNuu@qwe123 > auth/htpasswd
4、执行启动并测试
运行
bash run-registry.sh
测试 一下
docker tag nacos/nacos-server:2.0.3 192.168.2.215:8880/nacos:2.0.3
[gestep@k8s-slave-1 ~]$ docker login 192.168.2.215:8880/
Username: admin
Password:
Login Succeeded
上传
[gestep@k8s-slave-1 ~]$ docker push 192.168.2.215:8880/nacos:2.0.3