如何将配置pod拉取harbor私有镜像的账号密码保存为的secret?
摘要:配置pod拉取harbor容器镜像仓库私有镜像:secret保存账号密码,Docker-Registry类型的Secret简介,镜像仓库简介,搭建Harbor容器镜像仓库,安装Harbor,创建项目,推送镜像到harbor镜像仓库,使用se
目录一.系统环境二.前言三.Docker-Registry类型的Secret简介四.镜像仓库简介五.搭建Harbor容器镜像仓库5.1 安装Harbor5.2 创建项目5.3 推送镜像到harbor镜像仓库六.使用secret保存harbor账号密码拉取私有仓库的镜像七.总结
一.系统环境
本文主要基于Kubernetes1.22.2和Linux操作系统Ubuntu 18.04。
服务器版本
docker软件版本
Kubernetes(k8s)集群版本
CPU架构
Ubuntu 18.04.5 LTS
Docker version 20.10.14
v1.22.2
x86_64
Kubernetes集群架构:k8scludes1作为master节点,k8scludes2,k8scludes3作为worker节点。
服务器
操作系统版本
CPU架构
进程
功能描述
k8scludes1/192.168.110.128
Ubuntu 18.04.5 LTS
x86_64
docker,kube-apiserver,etcd,kube-scheduler,kube-controller-manager,kubelet,kube-proxy,coredns,calico
k8s master节点
k8scludes2/192.168.110.129
Ubuntu 18.04.5 LTS
x86_64
docker,kubelet,kube-proxy,calico
k8s worker节点
k8scludes3/192.168.110.130
Ubuntu 18.04.5 LTS
x86_64
docker,kubelet,kube-proxy,calico
k8s worker节点
二.前言
在Kubernetes集群中,为了方便管理和使用Harbor镜像仓库中的私有镜像,我们可以通过配置Pod使用Secret来保存Harbor仓库的账号密码。本文将为您介绍如何配置Pod以拉取Harbor镜像仓库中的私有镜像。
Harbor是一个开源的企业级Docker镜像仓库,它为Docker镜像提供了一个安全的存储和管理环境。Harbor支持私有镜像仓库和公有镜像仓库,可以通过Pod配置来使用私有镜像仓库中的镜像。
使用secret保存harbor账号密码拉取私有仓库的镜像的前提是已经有一套可以正常运行的Kubernetes集群,关于Kubernetes(k8s)集群的安装部署,可以查看博客《Ubuntu 安装部署Kubernetes(k8s)集群》https://www.cnblogs.com/renshengdezheli/p/17632858.html。
三.Docker-Registry类型的Secret简介
在Kubernetes中,Secret用于存储敏感信息,如密码、令牌等。Docker-Registry类型的Secret用于存储Docker镜像仓库的认证信息,包括用户名和密码。通过使用Docker-Registry类型的Secret,我们可以将认证信息与Pod配置关联,使Pod能够访问私有镜像仓库。
Secret有很多类型,比如kubernetes.io/service-account-token类型,Opaque类型,关于secret的更多用法,请查看博客《Kubernetes(k8s)密码管理:Secret》。
四.镜像仓库简介
Harbor是一个基于Go语言开发的Docker镜像仓库,它提供了用户管理、镜像仓库管理、镜像构建等功能。Harbor镜像仓库可以通过HTTP或HTTPS协议进行访问,用户可以通过Docker客户端上传和下载镜像。Harbor官网为:https://goharbor.io/ ,Harbor在GitHub的网址为:https://github.com/goharbor/harbor/ ,Harbor安装包下载地址为:https://github.com/goharbor/harbor/releases 。
镜像仓库除了可以使用Harbor搭建,还可以使用registry搭建,详情请查看博客《搭建docker镜像仓库(一):使用registry搭建本地镜像仓库》。
五.搭建Harbor容器镜像仓库
5.1 安装Harbor
当我们使用harbor搭建镜像仓库,创建项目的时候,如果项目选择公开,则人们可以使用匿名用户拉取镜像,如果项目不选择公开,则必须要docker login登录才能拉取镜像 。
下面在etcd2机器上,使用harbor搭建一个镜像仓库。
