K8S使用habor作为私有仓库
K8S使用habor作为私有仓库1、修改每个node上的docker认证仓库# 将每个node节点上的docker同样需要配置可信任仓库vi /etc/docker/daemon.json#修改为{"registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"],"insecure-registries": ["192.168.66.11"]
·
K8S使用habor作为私有仓库
1、修改每个node上的docker认证仓库
# 将每个node节点上的docker同样需要配置可信任仓库
vi /etc/docker/daemon.json
#修改为
{
"registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"],
"insecure-registries": ["192.168.66.11"]}
systemctl restart docker
2、创建认证secret
# 由于harbor采用了用户名密码认证,所以在镜像下载时需要配置sercet
[root@k8s-master ~]# kubectl create secret docker-registry harbor --namespace=default --docker-server=192.168.66.11 --docker-username=admin --docker-password=Harbor12345
secret/harbor created
#查看secret
[root@k8s-master ~]# kubectl get secret
NAME TYPE DATA AGE
default-token-rk6g7 kubernetes.io/service-account-token 3 10h
harbor kubernetes.io/dockerconfigjson 1 15m
#删除
kubectl delete secret harbor
3、部署示例
# 以一个部署一个nginx为例子,其中需要把containers中的images镜像指定为harbor仓库镜像地址,并且使用创建的的secret。
# kubectl create -f nginx.yml
apiVersion: apps/v1 #指定api版本标签
kind: Deployment #定义资源的类型/角色,deployment为控制器
metadata: #定义资源的元数据信息
name: nginx-test #定义资源的名称,在同一个namespace空间中必须是唯一的
labels: #定义资源标签
app: nginx
spec:
replicas: 3 #定义副本数量
selector: #定义选择器
matchLabels: #匹配上面的标签
app: nginx #匹配模板名称
template: #定义模板
metadata:
labels:
app: nginx
spec:
containers: #定义容器信息
- name: nginx #容器名,与标签名要相同
image: 192.168.66.11/project/nginx:test #容器使用的镜像以及版本
imagePullSecrets: #使用的secret
- name: harbor #使用前面创建的secret密钥
更多推荐
已为社区贡献2条内容
所有评论(0)