Janrs.com | 杨建勇

  • 首页
  • 站点地图
  • 所有文章
  • 加入学习群
Janrs.com | 杨建勇
Go/Kubernetes/Istio/CloudNative
  1. 首页
  2. Docker
  3. 正文

配置阿里私有镜像中心

2022年4月19日 146点热度 672人点赞 1条评论

[!Tip]
使用阿里私有镜像仓库
关联GitHub构建海外私有镜像
并且设置固有密码进行部署服务


使用阿里私有镜像仓库

[!NOTE]
阿里开通镜像仓库并且关联GitHub这里不做介绍,操作很简单
这边使用构建查看k8s节点使用资源情况的插件:metrics-server为例

1.在GitHub建立Dockerfile

在阿里镜像仓库关联了GitHub仓库后,在GitHub上面填写自己需要构建的镜像
本次记录的是metrics-server镜像

Dockerfile添加以下构建代码


From k8s.gcr.io/metrics-server/metrics-server:v0.6.1

截图如下

2.阿里镜像仓库添加构建规则

截图如下

[!NOTE]
类型 | Branch/Tag | 构建上下文目录 | Dockerfile路径 这几个都按照GitHub上面的路径来写,阿里会自动去查找对应的构建文件
如果查找不到会构建失败

点击立即构建等待显示构建成功,如果构建失败,则点击日志查看。截图如下

3.配置 k8s 使用阿里私有镜像

[!NOTE]
在配置之前需要注意的是:
阿里提供了公网/私网以及经典网络。需要哪种自己按需设置

3.1 kubectl生成密钥文件

kubectl --namespace kube-system create secret docker-registry aliimagesecret --docker-server=registry.cn-shenzhen.aliyuncs.com --docker-username=yjy86868@163.com --docker-password=${PASSWORD} --docker-email=yjy86868@163.com

[!NOTE]
生成密钥的时候需要指定命名空间,如果没设置命名空间,则生成的密钥默认放在default命名空间下
这里metrics-server需要放在kube-system下,所以指定--namespace kube-system
--docker-server参数值为阿里上提供的,自己查找然后复制过来
--docker-username参数值为阿里云的账号
--docker-password参数值为设置的固定密码。具体查看阿里文档
--docker-email参数可选

执行后显示

secret/aliimagesecret created

3.2 在yaml文件添加密钥

[!NOTE]
添加位置在containers同一层

添加配置参数如下

imagePullSecrets:
  - name: aliimagesecret

位置示例:

spec:
  selector:
    matchLabels:
      k8s-app: metrics-server
  strategy:
    rollingUpdate:
      maxUnavailable: 0
  template:
    metadata:
      labels:
        k8s-app: metrics-server
    spec:
      # 位置在这边
      imagePullSecrets:
        - name: aliimagesecret
      containers:
      - args:
        - --cert-dir=/tmp
        - --kubelet-insecure-tls
        - --secure-port=4443
        - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
        - --kubelet-use-node-status-port
        - --metric-resolution=15s
        image: registry.cn-shenzhen.aliyuncs.com/yjy_k8s/kubernetes-sigs_metrics-server:v0.6.1
        imagePullPolicy: IfNotPresent

3.3 增加校验证书的参数

[!NOTE]
由于我安装的是查看节点资源使用情况的查看,会调用kube-apiserver,调用的时候需要证书认证,没有配置该参数会被拒绝请求
添加的位置为containers下面的args参数列表。具体查看上面的示例代码

要添加的参数如下

- --kubelet-insecure-tls
- --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname

3.4 执行安装

kubectl apply -f ${PATH}/metric-server-v0.6.1.yaml

3.5 查看服务部署情况

get pod -n kube-system | grep metrics

显示

metrics-server-ddfcb5bff-mrtjn             1/1     Running   0                49m

至此。配置并使用阿里镜像仓库中心成功

本作品采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可
标签: docker
最后更新:2023年3月25日

码仔

Janrs.com

点赞
< 上一篇
下一篇 >

文章评论

  • 拾光

    nice!学到了学到了

    2023年2月19日
    回复
  • razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
    取消回复
    有关Go/istio/k8s/云原生直接搜
    文章目录
    • 使用阿里私有镜像仓库
      • 1.在GitHub建立Dockerfile
      • 2.阿里镜像仓库添加构建规则
      • 3.配置 k8s 使用阿里私有镜像
        • 3.1 kubectl生成密钥文件
        • 3.2 在yaml文件添加密钥
        • 3.3 增加校验证书的参数
        • 3.4 执行安装
        • 3.5 查看服务部署情况
      • 至此。配置并使用阿里镜像仓库中心成功

    COPYRIGHT © 2023 Janrs.com | 杨建勇. ALL RIGHTS RESERVED.

    Theme Kratos Made By Seaton Jiang

    闽ICP备20002184号