k8s实战-如何使用私有镜像仓库

这篇具有很好参考价值的文章主要介绍了k8s实战-如何使用私有镜像仓库。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

概述

本文介绍如何通过创建Secret来拉取私有镜像仓库的镜像,从而完成Deployment的创建。

使用私有仓库的问题

  1. 拉取镜像时需要认证

​ 使用私有仓库时需要通过用户名和密码进行认证。所以,若是直接配置镜像仓库的地址,无法拉取到镜像文件,会报拉取镜像的错误。

  1. 可能由于网络问题导致镜像拉取失败

​ 若是通过公网来拉取镜像,可能会由于网络原因导致惊醒拉取失败。

使用方式说明

在使用私有仓库时,需要进行认证。可以通过以下步骤来使用私有仓库:

  1. 在对应命名空间下创建一个Secret对象

创建secret的命令如下:

kubectl create secret docker-registry myregistrykey \
--docker-server=mycluster.icp:8500 \
--docker-username=<user_name> \
--docker-password=<user_password> \
--docker-email=<user_email> \
--namespace mynamespace
  1. 在创建pod或deployment的配置文件中引用该Secret对象

也就是在选项imagePullSecrets中指定myregistrykey。

apiVersion: apps/v1beta2
  kind: Deployment
  metadata:
    name: nginx-demo
  spec:
    replicas: 1
    selector:
      matchLabels:
        app: nginx
    template:
      metadata:
        labels:
          app: nginx
      spec:
        hostNetwork: false
        containers:
        - name: nginx
          image: mycluster.icp:8500/developer/nginx
          ports: []
          resources:
            limits: {}
        imagePullSecrets:
        - name: myregistrykey

这里一定要注意imagePullSecrets选项的位置,不要搞错了。其name,就是第1步我们创建的secret对象的名称。

使用Secret的实战步骤

创建secret
kubectl create secret docker-registry node-9005-pull-secret \
    --docker-server=xxx-vpc.cn-beijing.cr.aliyuncs.com \
    --docker-username=myuser \
    --docker-password=mypass \
    --docker-email=myuser@126.com \
    --namespace mytest
创建Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
  name: node-9005-dep
  namespace: mytest
spec:
  replicas: 2
  selector:
    matchLabels:
      app: node-9005
  template:
    metadata:
      name: node-9005
      labels:
        app: node-9005
    spec:
      containers:
      - name: nodejs
        image: xxx-vpc.cn-beijing.cr.aliyuncs.com/others/node-9005:20230505
        imagePullPolicy: IfNotPresent
      imagePullSecrets:
      - name: node-9005-pull-secret

注意:我这里用的是阿里云的仓库,所以使用了vpc的域名来拉取惊醒,这样镜像拉取会容易。文章来源地址https://www.toymoban.com/news/detail-581647.html

参考文献

  • 为特定名称空间创建 imagePullSecrets

到了这里,关于k8s实战-如何使用私有镜像仓库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 第27关 在K8s集群上使用Helm3部署最新版本v2.10.0的私有镜像仓库Harbor

    ------ 课程视频同步分享在今日头条和B站 大家好,我是博哥爱运维。 在前面的几十关里面,博哥在k8s上部署服务一直都是用的docker hub上的公有镜像,对于企业服务来说,有些我们是不想把服务镜像放在公网上面的; 同时如果在有内部的镜像仓库,那拉取镜像的速度就会很快

    2024年02月01日
    浏览(53)
  • k8s服务部署核心流程:以Jenkins为核心,从Gitee拉取代码,然后进行maven构建,之后使用docker命令打镜像,并推送镜像到harbor仓库,之后远程调用k8s命令创建服务

    前提是我们在自己电脑上模拟整个流程。 假设我们需要搭建一主一从的k8s集群,那就需要安装VMvare和Centos7(点击我查看安装文档), 然后就可以在这两个虚拟机上搭建k8s集群了(点击我查看安装文档), 一个最简单的devops流程已经在标题中写明了, 其中可以搭建gitlab(点

    2024年02月02日
    浏览(61)
  • k8s拉取私有仓库镜像失败:rpc error: code = Unknown desc = failed to pull and unpack image【20221121】

    k8s拉取镜像并不是通过docker拉取,而是通过 crictl拉取的。 失败原因如下: 解决方法: 1、先拷贝一份 2、修改/etc/containerd/config.toml 找到plugins.“io.containerd.grpc.v1.cri”.registry的位置 修改之前: 修改之后: 3、 内容: 4、重启 5、再次拉取

    2024年02月11日
    浏览(53)
  • K8s集群使用容器镜像仓库Harbor

    1.1.1 docker-ce安装 1.1.1.1 获取YUM源 使用阿里云开源软件镜像站。 1.1.1.2 安装并设置启动及开机自启动 1.1.2 docker compose安装 1.1.3 获取harbor安装文件 1.1.4 修改配置文件 1.1.5 执行预备脚本 1.1.6 执行安装脚本 1.1.7 验证运行情况 1.1.8 访问harbor UI界面 2.1.1 新建一个harbor私有仓库 2.1.2

    2024年02月02日
    浏览(66)
  • 使用k8s helm离线部署spark-operator(私有仓库)

    将制作的镜像上传到目的机器中,加载镜像 打标签其中xxxx.xxx/xx/为私有仓库的地址 将制作好的镜像推到私有仓库中 Github地址: 下载上传到机器中 解压spark-operator-1.1.27.tgz,修改values.yaml内容,修改副本数量为3、镜像源、利用伪亲和性使得三个副本在三台机器上。 修改Chart

    2024年02月09日
    浏览(40)
  • ctr-k8s镜像管理命令,将k8s正在使用的镜像推送仓库

    ​ 一.k8s镜像管理命令 查出k8s中pod在使用的镜像 kubectl get -o wide deploy -n yxyw-uat |awk ‘{print $7}’ 查出镜像地址,勾选正则开头配上镜像推送命令 gem-acr-p-a01-registry-vpc.cn-shenzhen.cr.aliyuncs.com/osale/gyx-admin:yxyw-pre-2023-06-05-11-18-10 ​ 二.将pod在使用的镜像推送到阿里云镜像仓库 三.cric

    2024年02月13日
    浏览(45)
  • 通过docker+cri-dockerd部署k8s集群环境(含harbor镜像仓库)

    目录 一.虚拟机准备 二.基础环境配置(各个节点都做) 1.IP和hosts解析 2.防火墙和selinux 3.安装基本软件 4.配置时间同步 5.禁用swap分区 6.修改内核参数并重载 7.配置ipvs 三.docker环境(各个节点都做) 1.配置软件源并安装docker-ce 2.配置docker加速 四.cri环境配置(各个节点都做)

    2024年02月05日
    浏览(68)
  • K8S:kubeadm搭建K8S+Harbor 私有仓库

    主机名及主机大小 主机ip 安装软件 master(2C/4G,cpu核心数要求大于2) 192.168.245.113 docker、kubeadm、kubelet、kubectl、flannel node01(2C/2G) 192.168.245.114 docker、kubeadm、kubelet、kubectl、flannel node02(2C/2G) 192.168.245.115 docker、kubeadm、kubelet、kubectl、flannel Harbor节点(hub.blue.com) 192.168.245

    2024年02月09日
    浏览(53)
  • 新版K8s:v1.28拉取Harbor仓库镜像以及本地镜像(docker弃用改用containerd,纯纯踩坑)

    使用Kuboard作为k8s集群的管理平台,Harbor作为镜像仓库,拉取Harbor镜像仓库的镜像运行。 从K8s1.24版本之后,k8s就逐渐弃用了docker,采用containerd来管理,这个很重要。 服务器 IP地址 备注 K8sMaster 192.168.2.138 kuboard,Master管理节点 K8sWorker01 192.168.2.139 Worker工作节点 K8sWorker02 192.168.

    2024年01月20日
    浏览(63)
  • k8s使用helm部署Harbor镜像仓库并启用SSL

    参照:https://zhaoll.blog.csdn.net/article/details/128155767 有多种安装方式,根据自己的k8s版本选择合适的helm版本 参考:https://blog.csdn.net/qq_30614345/article/details/131669319 我们这里使用helm安装harbor,项目地址:https://github.com/goharbor/harbor-helm (1)拉取项目文件 (2)解压并修改配置 tar -z

    2024年02月16日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包