1、首先,确保已经安装了Docker并配置好了与Harbor的连接。可以使用docker login <harbor地址>命令登录到Harbor仓库。
创建一个Secret对象来存储Harbor的认证信息。可以通过运行以下命令生成该Secret对象:
kubectl create secret docker-registry harbor --docker-server=<harbor地址> \
--docker-username=<用户名> --docker-password=<密码> --dry-run -o yaml | kubectl apply -f -
其中,将 <harbor地址>、<用户名> 和 <密码> 分别替换为相应的值。这样就会创建一个名为 harbor 的 Secret 对象。
[root@qianyi-ecs nginx]# kubectl get secret
NAME TYPE DATA AGE
default-token-kj2gf kubernetes.io/service-account-token 3 26h
harbor kubernetes.io/dockerconfigjson 1 9m19s
2、 编写一个 Kubernetes Pod YAML 文件,指定所需的容器镜像及其他必要的设置。示例如下:
apiVersion: v1
kind: Pod
metadata:
name: mypod
spec:
containers:
- name: mycontainer
image: <harbor地址>/<项目名称>/<镜像名称>:<标签>
ports:
- containerPort: 80
imagePullSecrets:
- name: harbor
注意替换 <harbor地址>、<项目名称>、<镜像名称> 和 <标签> 为实际的值。此处还引用了之前创建的 harbor Secret 对象。
3、使用 kubectl apply -f <Pod YAML文件路径> 命令部署该 Pod。
4、等待片刻后,可以使用 kubectl get pods 查看 Pod 状态,当状态变为 "Running" 时表示成功拉取 Harbor 私有镜像。
[root@qianyi-ecs nginx]# kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
default my-nginx 1/1 Running 0 10m
5、若想删除该 Pod,可以使用 kubectl delete pod <Pod名称> 命令。