Kubernates集成Harbor的主要思路及操作

本文介绍了Kubernates集成Harbor的主要思路及操作。

前置工作
  1. 安装Kubernates集群
  2. 安装Harbor
主要思路
  • 操作k8s node的docker,虽然可以从harbor仓库pull镜像。但是k8s创建pod时,仍然无法从harbor仓库pull。这时需要根据harbor登录用户信息,在k8s中创建一个资源类型是Secret(私钥)
  • 在yaml文件中添加imagePullSecrets参数,指定一个或多个Secret,用于从远程仓库pull镜像时提交用户信息进行认证。
  • Harbor项目与用户:默认的项目是library,默认为public公开的,即harbor所有用户都可以pull。当然你也可以根据需要创建自己的项目,并且强烈建议将项目设为private私有的,这样只有该项目下的成员(默认包含admin用户)才能访问。
    成员的角色可以有三种
    - Master:项目管理员,对镜像有上传、下载、删除和查看的权限。
    - Developer:开发人员,只能查看、上传和下载镜像权限。
    - Guest :访客,只能查看和下载镜像的权限。
    - Limited Guest 受限的访客
详细步骤如下
Step1、在node上执行 docker login 登录Harbor
# admin             -	harbor的用户名
# Harbor12345       -	harbor的密码
# harbor.domain.com -	harbor仓库的域名/IP
docker login -uadmin -pHarbor12345 harbor.domain.com

执行命令查看登录状态:

[root@dev ~]# cat ~/.docker/config.json 
{
        "auths": {
                "harbor.domain.com": {
                        "auth": "Y2N4...MjM="
                }
        }
}   
Step2、生成秘钥(secret),命名为secret-harbor-dev
# 参数说明:
# secret-harbor     - 这是密钥的键名称, 可自行定义
# --docker-server   - 指定docker仓库地址
# --docker-username - 指定docker仓库账号
# --docker-password - 指定docker仓库密码
# -n - 指定namespace,默认为default
kubectl create secret docker-registry secret-harbor \
    --docker-server=harbor.domain.com \
    --docker-username=admin \
    --docker-password=Harbor12345
Step3、查看秘钥
[root@dev244 ~]# kubectl get secret
NAME            TYPE                             DATA   AGE
secret-harbor   kubernetes.io/dockerconfigjson   1      22s
Step4、yaml文件中通过imagePullSecrets指定拉取镜像操作使用的秘钥
# imagePullSecrets - 声明拉取镜像时需要指定密钥,值为密钥的名称
imagePullSecrets:
- name: secret-harbor

注意:
1)在定义Deployment的yaml文件中,要注意参数层级,应设置在spec.template.spec.imagePullSecrets
2)当前资源的namespace必须与密钥的一致。

这样,在执行yaml文件时,node节点上的docker就可以使用secret-harbor通过Harbor认证,从Harbor拉取镜像了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
回答: DockerKubernetesHarbor在不同的方面都有重要性。Docker是一个开放平台,用于开发、交付和运行应用程序,它使用户能够将应用程序与基础架构分开,从而实现快速交付软件。Kubernetes是一个容器编排平台,用于自动化部署、扩展和管理容器化应用程序。它提供了强大的容器编排和管理功能,使得应用程序的部署和管理更加简单和高效。Harbor是一个企业级的Docker镜像存储和分发平台,它提供了一些必要的特性,如安全、标识和管理等,扩展了Docker的功能。因此,这三个工具在不同的层面上都是重要的,具体取决于您的需求和使用场景。 #### 引用[.reference_title] - *1* *3* [kubernetes 分别从dockerharbor拉取镜像](https://blog.csdn.net/weixin_35615475/article/details/111944151)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Jenkins, Docker, kubernetes, Harbor定义](https://blog.csdn.net/calabash_man/article/details/129944199)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jason9211

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值