当前位置: 首页 > 知识库问答 >
问题:

Kubernetes集群豆荚作为Jenkins构建代理

鲜于德泽
2023-03-14
Manage Jenkins --> Configure System--> Cloud --> Pod Template --> Container Template

Name: sonatype
Docker image:sonatype:4546/ubuntu-16.04

如何使用我们的私有docker注册表映像并将它们作为kubernetes集群中的Jenkins奴隶执行?我有以下脚本管道代码。阶段1“SCM代码检查”到K8S工作-节点正在工作,下一阶段构建它是从模板Kubernetes pod模板启动pod agent。但是如果使用docker:not found失败。它似乎试图拉我们的注册表图像在吊舱。从我们的worker-node中,系统的代码需要挂载到dynamic Jenkins slave pods中,并执行构建和下一个阶段。任何要实现的方向都是有帮助的。

node ("kubupods") { 
       stage('Code Compile') { 
          sh 'hostname'
        }
                
      stage('Code Analysis') {    
         sh 'hostname'
    }
    }
    
 

共有1个答案

金子平
2023-03-14

默认情况下,Jenkins将从DockerHub中提取图像。在您的例子中,图像sonatype:4546/Ubuntu-16.04。为了使用private registry,如果在管道中构建,您需要提供private registry,以及它的凭据。您可以在UI上提供它,也可以通过代码实现它。参考这里

之后,您还需要告诉kubernetes YAML关于私有注册表的信息。你可以在这里参考。这实际上是两个步骤a)创建一个kubernetes秘密b)使用ImagePullSecret字段告诉您的部署该秘密。

请确保将映像引用为<用户名或注册表URL/ :

配置插件以使用Jenkins安装包。

>

  • 去管理詹金斯

    全局工具配置

  •  类似资料:
    • 我有一个编织网络插件。 我的wave pod正在运行,dns pod也在运行,但是当我想像一个简单的nginx一样运行pod时,wich会拉一个nginx图像pod卡在容器创建中,描述pod给我错误,创建pod沙箱失败。 当我运行journalctl-u kubelet时,我得到以下错误 我的网络插件配置不好吗? 在这不起作用之后,我也尝试了这个命令 我甚至试过法兰绒,这给了我同样的错误。我给ku

    • 环境*Kubernetes 1.9.3*使用在AWS(专用网络拓扑)上运行的kops(V1.8)创建的集群*网络:weave-net*集群:1主,3节点 事件实例时间线 > 我们已经使用kops执行了滚动集群更新,以使用我们构建的新AMI(基于kops AMI k8s-1.8-debian-jessie-amd64-hvm-ebs-2017-11-27)启动节点和主机。调整kops AMI从来都不

    • PostgreService.yaml 已创建服务的终结点为 然后我在pod(kubectl exec-it mark-dummy-pod bash)内运行ping172.31.6.149,但不工作。(ping localhost正在工作)

    • 我们有一个应用程序,其中包含 4 个 pod,并使用负载均衡器运行!我们想尝试滚动更新,但我们不确定当 Pod 出现故障时会发生什么!文档不清楚!特别是《豆荚的终止》中的这句话: Pod将从服务的endpoint列表中删除,并且不再被视为复制控制器的运行Pod集的一部分。缓慢关闭的Pod可以继续为流量提供服务,因为负载平衡器(如服务代理)将它们从轮换中删除。 因此,如果有人能在以下问题上指导我们:

    • 我在一个有3个节点的kubernetes集群上运行nginx。 我想知道是否有任何好处,例如,有4个豆荚和限制他们的CPU/MEM约。节点容量的1/4相对于每个节点运行一个pod,限制CPU/MEM,以便pod可以使用整个节点的资源(为了简单起见,我们将cubernet服务排除在等式之外)。 我的感觉是,豆荚越少,开销就越小,每个节点使用1个豆荚应该是性能最好的? 提前致谢

    • 以下是两位工作人员的日志,这将有助于强调这个问题: 工人-0: 工人2: