K8S拉取Harbor私有镜像
harbor
Harbor 是一个开源的容器镜像仓库,用于存储和管理 Docker 镜像和其他容器镜像。 * 容器镜像仓库、存储和管理 Docker 镜像和其他容器镜像 * 有什么特点:支持多种镜像格式、易于使用、安全性和访问控制
项目地址:https://gitcode.com/gh_mirrors/ha/harbor
免费下载资源
·
K8S在默认情况下只能拉取Harbor仓库中的公有镜像,拉取私有镜像会报错:ErrImagePull
或 ImagePullBackOff
,如下图:
出现这种问题,一般有两种解决办法:
1)到 Harbor 仓库中把该镜像的项目设置成公开权限
2)创建认证登录秘钥,在拉取镜像时带上该秘钥
一、创建秘钥
1)先在服务器上登录 Harbor 仓库:
登录Harbor
docker login -u admin -p Harbor12345 192.168.81.84
2)查看登录的秘钥数据:
登录成功后会在当前用户下生成 .docker/config.json 文件
cat ~/.docker/config.json
再对上面的 config.json 进行base64加密
cat ~/.docker/config.json |base64 -w 0
3)创建 secret.yaml 文件:
apiVersion: v1
kind: Secret
metadata:
name: login
type: kubernetes.io/dockerconfigjson
data:
.dockerconfigjson: ewoJImF1dGhzIjogewoJCSJ0Y2xvdWQuaHViIjogewoJCQkiYXV0aCI6ICJZV1J0YVc0NlNHRnlZbTl5TVRJek5EVT0iCgkJfQoJfSwKCSJIdHRwSGVhZGVycyI6IHsKCQkiVXNlci1BZ2VudCI6ICJEb2NrZXItQ2xpZW50LzE3LjA5LjAtY2UgKGxpbnV4KSIKCX0KfQ==
创建对象
kubectl create -f secret.yaml
4)创建应用,拉取私有镜像:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: tomcat-dpm
spec:
replicas: 2
selector:
matchLabels: # 注:与RC不同
app: tomcat
template:
metadata:
labels: # Pod副本拥有的标签,对应RC的Selector
app: tomcat
version: v1
spec:
containers:
- name: tomcat
#image: tomcat:8.0.52-alpine
image: tcloud.hub/kstest/tomcat:7.0-jre8-alpine-tc
imagePullPolicy: Always
ports:
- containerPort: 8080 # 容器应用监听的端口号
hostPort: 8088
imagePullSecrets:
- name: login
注:需要在创建容器时指定 imagePullSecrets 指标,指定刚才创建的秘钥
GitHub 加速计划 / ha / harbor
23.24 K
4.68 K
下载
Harbor 是一个开源的容器镜像仓库,用于存储和管理 Docker 镜像和其他容器镜像。 * 容器镜像仓库、存储和管理 Docker 镜像和其他容器镜像 * 有什么特点:支持多种镜像格式、易于使用、安全性和访问控制
最近提交(Master分支:2 个月前 )
9e55afbb
pull image from registry.goharbor.io instead of dockerhub
Update testcase to support Docker Image Can Be Pulled With Credential
Change gitlab project name when user changed.
Update permissions count and permission count total
Change webhook_endpoint_ui
Signed-off-by: stonezdj <stone.zhang@broadcom.com>
Co-authored-by: Wang Yan <wangyan@vmware.com> 13 天前
3dbfd422
Signed-off-by: wang yan <wangyan@vmware.com> 13 天前
更多推荐
已为社区贡献2条内容
所有评论(0)