Jenkins

Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。目前提供超过1000个插件来支持构建、部署、自动化, 满足任何项目的需要。

Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。本文记录通过使用 Helm Chart 将 Jenkins 部署到 Kubernetes 集群中

本文环境

  • jenkins 2.190.3
  • Kubernetes v1.14.8
  • helm 3.0 release

部署

  1. 部署 Kubernetes
  2. 配置 helm 及 kubectl 环境
  3. 部署 Jenkins
部署 Kubernetes

本文不再阐述 kubernetes 部署细节,有需要可以参考一步步部署 Kubernetes.

配置 helm 及 kubectl 环境

本文不再阐述 helm 及 kubectl 环境配置,需要自行安装.

部署 Jenkins
  1. 添加 helm repo

    helm repo add stable https://kubernetes-charts.storage.googleapis.com/
  2. 查看目前的最近版本

    $ helm search repo stable/jenkins -l
    NAME CHART VERSION APP VERSION DESCRIPTION
    stable/jenkins 1.9.11 lts Open source continuous integration server. It s...
    stable/jenkins 1.9.10 lts Open source continuous integration server. It s...
    stable/jenkins 1.9.9 lts Open source continuous integration server. It s...
    stable/jenkins 1.9.8 lts Open source continuous integration server. It s...
    stable/jenkins 1.9.7 lts Open source continuous integration server. It s...
    stable/jenkins 1.9.6 lts Open source continuous integration server. It s...
    stable/jenkins 1.9.5 lts Open source continuous integration server. It s...
    stable/jenkins 1.9.4 lts Open source continuous integration server. It s...
  3. 部署 jenkins

    chart 中对应的镜像版本为 lts ,这个版本的镜像 jenkins 一直有在更新。所以我们只需要部署目前最新的 chart 即可,默认是没有指定 storageClass 的,需要指定。

    $ helm install jenkins stable/jenkins -n <namespace> \
    --set persistence.storageClass=<storageClass>

    注意:namespace 为命名空间, storageClass 为存储类

    只需这一条命令 jenkins 就已经部署完成了,并且 chart 中默认安装了一些常用插件,比如 kubernetes 插件,并且生成了对应的配置,chart 真香:)

总结

本文只是简单介绍了使用 chart 的部署过程。

本文由博客一文多发平台 OpenWrite 发布!

Helm Chart 一键部署 Jenkins的更多相关文章

  1. mac通过docker一键部署Jenkins

    目录 mac通过docker一键部署Jenkins 一.前言 二.系统配置 三.安装步骤 Dockerhub查看镜像地址 1.一键安装 1.1.下载脚本 1.2.安装程序 1.2.1.安装程序详情 1 ...

  2. 如何选出适合自己的管理Helm Chart的最佳方式?

    本文转载自Rancher Labs 无论你喜欢与否,你都不得不承认Helm是管理Kubernetes应用程序独一无二的工具,你甚至可以通过不同的方式使用它. 在Helm的使用过程中,我们注意到有几个问 ...

  3. 使用 Helm Chart 部署及卸载 istio

    部署 istio 1.添加 istio 官方的 helm 仓库 helm repo add istio https://storage.googleapis.com/istio-release/rel ...

  4. Jenkins实现测试环境到生产环境一键部署(Windows)

    前言: 因为dotnet在发布站点后,然后再上传服务时,会因为各种的网速问题,导致站点瞬间挂掉!那么通过一键部署,先在测试站点测试好的文件,复制到正式站点上的一个缓冲区,进行预热配置,之后再本机进行文 ...

  5. jenkins + supervisor + ansible 实现netcore程序的多机一键部署

    上一篇我们简单的说到了使用jenkins+supervisor实现了一个单机版的多副本部署,但是在更多的场景下还是需要netcore程序的多机一键部署,那么多 机器间如何分发呢? 肯定不能使用scp这 ...

  6. Jenkins使用FTP进行一键部署及回滚2(Windows)(项目实践)

     转载:http://www.cnblogs.com/EasonJim/p/6295372.html Jenkins使用FTP进行一键部署及回滚2(Windows)(项目实践) 前提: 这一篇是继上一 ...

  7. 【K8S】helm chart多环境部署最佳实践-示例

    Chart.yaml apiVersion: v1 appVersion: "1.0" description: A Helm chart for Kubernetes name: ...

  8. 容器镜像服务联手 IDE 插件,实现一键部署、持续集成与交付

    容器技术提供了一种标准化的交付方式,将应用的代码以及代码环境依赖都打包在一起,成为一个与环境无关的交付物,可以被用在软件生命周期的任何阶段,彻底改变了传统的软件交付方式. 甚至可以说,是在容器技术之后 ...

  9. 容器镜像服务 联手 IDE 插件,实现一键部署、持续集成与交付

    容器技术提供了一种标准化的交付方式,将应用的代码以及代码环境依赖都打包在一起,成为一个与环境无关的交付物,可以被用在软件生命周期的任何阶段,彻底改变了传统的软件交付方式. 甚至可以说,是在容器技术之后 ...

随机推荐

  1. 【NS2】在linux下安装低版本GGC

    1.下载安装包,cd到文件所在目录 sudo dpkg -i gcc41-compat-4.1.2-ubuntu1210_i386.deb g++41-compat-4.1.2_i386.deb 2. ...

  2. ROS报错:IOError:[Errno 13]permission denied: /home/neousys/.ros/roscore-11311.pid"

    在安装ROS后启动ROS,输入:roscore 时报错: 这个问题是由于该路径下ros文件权限造成的. 输入以下命令修改权限: sudo chmod -R ~/.ros/ 修改完成后再次输入rosco ...

  3. @codeforces - 793G@ Oleg and chess

    目录 @description - translation@ @solution@ @part - 1@ @part - 2@ @part - 3@ @part - 4@ @accepted code ...

  4. 《C语言深度解剖》学习笔记之关键字

    第一章 关键字 C语言共有32个关键字. 关键字   auto 声明自动变量 int 声明整型变量 long 声明长整型变量 char 声明字符型变量 float 声明浮点型变量 short 声明短整 ...

  5. CNN滤波器

    CNN 的第一步是把图片分成小块.我们通过选取一个给定宽度和高度的滤波器来实现这一步. 滤波器会照在图片的小块 patch (图像区块)上.这些 patch 的大小与滤波器一样大.   如之前视频所示 ...

  6. 第三期 行为规划——4.形式化FSM

    让我们考虑一个简单的自动售货机,其中一切花费20美分.假设这台自动售货机只需要镍和硬币,但没有更大或更小. 然后,我们可以模拟状态这台自动售货机以已存入的金额为准.起始状态将为零美分.有两种可能发生. ...

  7. 2019年ICPC南昌网络赛 J. Distance on the tree 树链剖分+主席树

    边权转点权,每次遍历到下一个点,把走个这条边的权值加入主席树中即可. #include<iostream> #include<algorithm> #include<st ...

  8. js获取盒子scrollTop

    前言:如何单纯获取某个盒子的滚动值-->>  (属性可写可读) var scroll = document.getElementById('box').scrollTop;//获取盒子的滚 ...

  9. 【原生JS】动态分页样式效果

    效果图如下: html: <body> <div> <table id="btnbox"> <tbody> <tr>&l ...

  10. H3C CHAP验证配置示例一