docker搭建jenkins

一、搭建jenkins环境

1、下载jenkins镜像https://hub.docker.com/r/jenkins/jenkins/tags,选择lts的jenkins最新版本

docker pull jenkins/jenkins:lts

2、/home下新建jenkins用户的工作目录,这一步最好保持目录一致

mkdir /home/jenkins

3、查看目录归属ID命令 ls -nd /home/jenkins ,这里查看ID是0

上述步骤有的查出来ID是1000,无论是0还是1000均给ID为1000的用户添加操作权限

chown -R 1000:1000 /home/jenkins/

4、运行容器

docker run -itd -p 9090:8080 -p 50000:50000 --name jenkins --privileged=true -v /home/jenkins:/var/jenkins_home jenkins/jenkins:lts
  • --privileged=true 让容器有root权限,方便进入容器操作
  • -p 9090:8080 jenkins的web访问端口9090
  • -v /home/jenkins:/var/jenkins_home 容器/var/jenkins_home路径映射到宿主机/home/jenkins

5、浏览器输入http://服务器ip:9090/访问jenkins首页(使用阿里云的话访问前记得先开放端口)

首次启动需要输入密码

启动容器的时候容器/var/jenkins_home路径映射到宿主机/home/jenkins,在宿主机的/home/jenkins/secrets/initialAdminPassword地址可以找到密码

接下来选择左侧安装推荐的插件,

 

二、通过SSH配置linux宿主机为slave节点

 jenkins是搭建在docker容器里,运行job的时候默认会在容器内部运行代码,相关的依赖环境python等需要在docker容器重新安装一遍,这样很不方便。
如果宿主机已经安装好相关的运行环境了,docker容器我们搭建好jenkins就行了, 把宿主机设置为jenkins的一个slave节点

1、插件管理中查找SSH Agent进行安装

2、启动SSH Sever

Jenkins-系统管理 - 全局安全配置, 把 SSH Server 设置为启用(默认是禁用)

 3、新增宿主机节点

Jenkins- 系统管理 - 节点管理,新建节点

 

添加节点页面

  • 名称 自定义一个节点名称
  • 执行器数量 可以同时执行的job线程数,随便写个数字
  • 远程工作目 宿主机上workspace目录
  • 标签 自定义
  • 用法 尽可能的使用这个节点
  • 启动方式 Launch agent agents via SSH
  • 主机 你自己的宿主机linux服务的ip
  • Credentials 添加你的linux服务器远程访问的root账号和密码
  • Host Key Verification Strategy 这项选择Non verifying Verifcation Stragegy

 

 

添加证书Credentials,linux服务器远程访问的root账号和密码

4、 添加成功后是离线状态,点击节点进入详情操作“重启代理”。没有红色了代表已经正常启动了

5、新建任务job在新建的节点下构建

 

 三、拉取git仓库代码

1、任务-源码管理:

 

 2、执行构建

先查找到工作目录:

修改shell执行命令执行,会在当前的工作目录下开始执行:

 

posted @ 2020-09-03 18:24  dd0917  阅读(359)  评论(0编辑  收藏  举报