Skip to content

jenkins

jenkins 主要用来做持续集成

安装

docker-compose 搭建

version: '3.1'
services:
  jenkins:
    image: jenkins/jenkins:lts
    volumes:
      - ./data/var/jenkins_home:/var/jenkins_home
    ports:
      - "8081:8080"
    expose:
      - "8080"
      - "50000"
    privileged: true
    user: root
    restart: always
    container_name: jenkins
    environment:
      JAVA_OPTS: '-Djava.util.logging.config.file=/var/jenkins_home/log.properties'

从节点

#docker 运行jenkins-slave示例,使用jnlp方式进行连接,即是agent主动连接master
docker run jenkins/jnlp-slave -url http://jenkins-server:port -workDir=<workdir> <secret> <agent name>
#比如创建好节点后,他会提示如下命令运行,这是java方式直接运行
java -jar slave.jar -jnlpUrl http://192.168.11.241/computer/slave%2002%20node/slave-agent.jnlp -secret 57901575cac903e95a15598d00f5a1c97101d766a5c70933cf5c26f41abxxxxx
#这个是使用docker容器里运行jenkins-slave示例,关键点是把http,workdir, <secret> <agent name>等参数对应填写好
orkdir是在jenkins新增节点时候填写的
docker run --name jenkins-slave02 -d --restart=unless-stopped jenkins/jnlp-slave  -url  http://192.168.11.241:8080 -workDir=<workdir> <secretKey> slave02

配置更新中心

网页中中文更新中心地址可能过时,去 https://www.jenkins-zh.cn/tutorial/management/plugin/update-center/ 获取最新地址设置

目录介绍

# 配置文件
config.xml 
# 作业节点
nodes/
# 插件
plugins/
# 秘钥信息
secret*
# 插件更新目录
updates/
# 用户目录
userContent/
# 所有用户
users/
# 项目作业
jobs/
# 默认工作目录
workspace/

流水线

构建触发器

轮询 SCM

轮询gitlab(类似版本管理中心)版本是否变更,变更后触发

  • 一般不使用,太被动,一般代码版本变动了直接去触发jenkins就行

触发远程构建

可请求对应远程地址来构建

权限

下载插件 Role-based Authorization Strategy

Comments