jenkins是经常使用的CI/CD工具,具备普遍的插件,使用起来简单便捷。工做环境中我使用docker方式进行部署(为何用docker部署,由于方便)
version: '3' services: jenkins: restart: always image: docker.io/jenkins/jenkins:latest container_name: jenkins ports: - '8080:8080' #web 端口 - '50000:50000' #50000 slave管理端口 privileged: true environment: TZ: Asia/Shanghai volumes: - ./jenkins_home:/var/jenkins_home - /var/run/docker.sock:/var/run/docker.sock - /usr/bin/docker:/usr/bin/docker - /etc/sysconfig/docker:/etc/sysconfig/docker
部署成功后直接访问便可,url以下:http://192.168.1.123:8080前端
第一次登录须要建立用户,安装一些插件,按照步骤走下去就好 登录进入界面以下:
补充一些经常使用插件(后面使用详解):Manage Jenkins -> Manage Plugins * Ding Talk #构建信息通知到钉钉机器人 * Git plugin #拉取git代码 * Environment Injector Plugin(注意:会出现下载失败状况,去清华镜像网手动下载便可) #变量插件,设置kubernetes yaml清单文件时,不会根据不一样环境配置不少份,会用通用模板,用变量形式去部署不一样的环境,例如不一样的namespace、启动参数等等 * Docker plugin #一、构建镜像 二、上传到镜像仓库 三、删除本地镜像 * Kubernetes Continuous Deploy Plugin #发布至kubernetes * Publish Over SSH # 链接远程主机
进入Global Tool Configuration
安装maven和NodeJS,如图新增安装就好,后台会自动下载相应的版本程序 maven用于编译后端程序 NodeJS用于编译前端程序
链接远程docker服务器进行镜像构建上传等操做,我直接链接安装jenkins所在的主机,进行构建镜像等操做 一、修改docker配置文件 vim /usr/lib/systemd/system/docker.service 以下图: 二、重启 systemctl daemon-reload systemctl restart docker
新版本挪了位置,进入方式:Manage Jenkins -> Configure Systen -> 拖到最下面,点击Cloud -> 以下添加便可,可以使用Test Connection来检测是否链接成功,显示出版本号即成功
Manage Jenkins -> Configure Systen,以下图设置对应的webhook以及安全策略,具体信息去钉钉中设置
配置钉钉告警
链接远程git仓库,添加相应的凭证
构建触发器,一旦git端有代码提交,就会自动进行构建,因为部署在内网,不能使用git的webhook。便使用轮训功能,一分钟检测一次
配置环境变量模板
推送镜像至镜像仓库
发布程序至kubernetes,如下为认证信息与yaml文件所放置的位置