harbor已经部署完成,如何在k8s上连harbor,k8s使用containerd
时间: 2023-06-30 21:06:37 浏览: 181
要在 Kubernetes 上连接 Harbor,您需要执行以下操作:
1. 在 Kubernetes 集群中安装 `docker-registry` 的 `secret`
```
kubectl create secret docker-registry harbor-registry \
--docker-server=<harbor-registry-server> \
--docker-username=<harbor-username> \
--docker-password=<harbor-password> \
--docker-email=<harbor-email>
```
这将创建一个名为 `harbor-registry` 的 secret,可以用于连接到 Harbor。
2. 将 `imagePullSecrets` 添加到您的 Kubernetes 部署中
```
apiVersion: v1
kind: Pod
metadata:
name: my-pod
spec:
containers:
- name: my-container
image: my-image
imagePullSecrets:
- name: harbor-registry
```
在 `imagePullSecrets` 中添加 `harbor-registry`,这将允许您的 Kubernetes 部署从 Harbor 中拉取镜像。
如果您的 Kubernetes 集群使用 containerd 作为容器运行时,您需要在每个节点上配置 containerd。
1. 编辑 `/etc/containerd/config.toml` 文件
```
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."harbor-registry-server"]
endpoint = ["https://harbor-registry-server"]
tls_ca_file = "/path/to/ca.crt"
```
在 `config.toml` 文件中,您需要添加 Harbor 仓库的镜像地址和 CA 证书的路径。
2. 重启 containerd 服务
```
sudo systemctl restart containerd
```
这样,您就可以在 Kubernetes 集群中使用 Harbor 了。
阅读全文