一在 Docker harbor 節點(192.168.11.)上操作?
1 關閉防火墻防護
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
2 安裝docker?
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce
systemctl start docker.service
systemctl enable docker.service
docker version
3 上傳軟件表到 /opt 目錄中?
上傳 docker-compose 和 harbor-offline-installer-v1.2.2.tgz 到 /opt 目錄中
cd /opt
chmod +x docker-compose
mv docker-compose /usr/local/bin/
4?部署 Harbor 服務?
tar zxvf harbor-offline-installer-v1.2.2.tgz -C /usr/local/
vim /usr/local/harbor/harbor.cfg
--5行--修改,設置為Harbor服務器的IP地址或者域名
hostname = 192.168.10.23
5 在 Harbor 中創建一個新項目?
(1)瀏覽器訪問:http://192.168.10.23 登錄 Harbor WEB UI 界面,默認的管理員用戶名和密碼是 admin/Harbor12345
(2)輸入用戶名和密碼登錄界面后可以創建一個新項目。點擊“+項目”按鈕
(3)填寫項目名稱為“kgc-project”,點擊“確定”按鈕,創建新項目
6 在每個 node 節點配置連接私有倉庫(注意每行后面的逗號要添加)?
cat > /etc/docker/daemon.json <<EOF
{"registry-mirrors": ["https://6ijb8ubo.mirror.aliyuncs.com"],"insecure-registries":["192.168.10.23"]
}
EOF
systemctl daemon-reload
systemctl restart docker
7 在每個 node 節點登錄 harbor 私有倉庫?
docker login -u admin -p harbor12345 http://192.168.10.23
8 在一個 node 節點下載 Tomcat 鏡像進行推送?
docker pull tomcat:8.0.52
docker images
?
docker tag tomcat:8.0.52 192.168.10.23/kgc-project/tomcat:v1
docker imagesdocker push 192.168.10.23/kgc-project/tomcat:v1
9 查看登陸憑據?
cat /root/.docker/config.json | base64 -w 0 #base64 -w 0:進行 base64 加密并禁止自動換行
10 創建 harbor 登錄憑據資源清單,用于 K8S 訪問 Harbor 私服拉取鏡像所需要的密鑰權限憑證 secret 資源?
創建 harbor 登錄憑據資源清單,用于 K8S 訪問 Harbor 私服拉取鏡像所需要的密鑰權限憑證 secret 資源
vim harbor-pull-secret.yaml
apiVersion: v1
kind: Secret
metadata:name: harbor-pull-secret
data:.dockerconfigjson: ewoJImF1dGhzIjogewoJCSIxOTIuMTY4LjE5NS44MCI6IHsKCQkJImF1dGgiOiAiWVdSdGFXNDZTR0Z5WW05eU1USXpORFU9IgoJCX0KCX0sCgkiSHR0cEhlYWRlcnMiOiB7CgkJIlVzZXItQWdlbnQiOiAiRG9ja2VyLUNsaWVudC8xOS4wMy41IChsaW51eCkiCgl9Cn0= #復制粘貼上述查看的登陸憑據
type: kubernetes.io/dockerconfigjson
11 創建 secret 資源?
創建 secret 資源
kubectl create -f harbor-pull-secret.yaml//查看 secret 資源
kubectl get secret