docker搭建jenkins

一、运行jenkins

这里我们选择Jenkins中国定制版的镜像是因为下载jenkins的插件快不会失败,因为插件源换成了国内的

docker run -itd  \
  -p 8080:8080 -p 50000:50000 \
  --name jenkins \
  --privileged=true -u root \
  --restart=always \
  -v /data/jenkins:/var/jenkins_home \
  jenkinszh/jenkins-zh:lts

备注: 8080是web端口;50000是jenkins的slave节点连接jenkins的master节点需用到的

容器运行后我们打开页面,我的宿主机ip是192.168.15.9,容器的8080端口映射到了宿主机8080端口,所以我们通过http://192.168.15.9:8080/访问web服务,第一次访问需要解锁jenkins输入管理员密码
jenkins
因为我们把容器的/var/jenkins_home映射到了宿主机的/data/jenkins目录,所以通过以下方式获取初始密码,copy到web

$ cat /data/jenkins/secrets/initialAdminPassword
19d2df6c2cc64cd4828bac4506107071

安装推荐的插件
插件
等待插件安装完成后,创建一个管理员账号
账号
实例配置默认即可
实例

二、添加节点

jenkins可以分布式构建代码,比如有两个项目需要打包 ,我们可以让第一个项目在A节点打包,另一个项目在B节点打包,这样可以互不干扰并发打包两个项目了。

新增节点
node
节点名称唯一,不能重复
test

以下是两种不同的方式添加slave节点

1、ssh方式添加节点(节点可以是物理机也可以是容器,此处物理机)
# step1: 在jenkins容器所在的宿主机先生成ssh key
$ ssh-keygen    # 一直 enter 确认即可

# step2: 把整个".ssh"目录copy到/var/jenkins_home
$ cp -r ~/.ssh /data/jenkins

# step3: 把 ~/.ssh/id_rsa.pub 内容append到slave节点机的 ~/.ssh/authorized_keys文件

# step4: 把 ~/.ssh/id_rsa 内容copy到新增节点的 "Credentials"私钥中

备注:在新增节点的表单中启动方式选“Launch agent via ssh”,并点击高级按钮设置slave节点机器的java命令路径(which java)

以下截图是上面步骤的补充说明
设置节点

  • 远程工程目录:会自动创建填写的目录
  • 主机:节点机ip
  • Credentials:没有凭证的话需要添加
    she
    添加凭证
  • Username:必须是ssh key的用户
    凭证
    最后启动节点就可以了
    启动代理节点
    节点就在线了
    节点
2、通过java web代理方式添加节点(节点可以物理机也可以容器,此处容器)
# step1:启动一个ubuntu18.04镜像的容器
$ sudo docker run -dit --name ubuntu  --privileged=true ubuntu:18.04 /bin/bash

# step2:进入容器
$ sudo docker exec -it ubuntu /bin/bash

# step3:安装依赖(容器必须安装了java、ssh、git、wget)
$ apt update

# 安装wget
$ apt-get -y install wget

# 安装java
$ apt install -y default-jre
$ apt install -y openjdk-8-jre-headless

# 安装ssh
$ apt install -y openssh-server

# 安装git
$ apt install -y git

# step4: 下载"agent.jar"(agent.jar包连接在jenkins节点详情)
$ wget http://192.168.15.9:8888/jnlpJars/agent.jar

# step4: 连接jenkins master(命令在jenkins节点详情)
$ java -jar agent.jar -jnlpUrl http://192.168.15.9:8888/computer/docker/slave-agent.jnlp -secret 5372c28e77f561b8cd85b579316636228dcc34b357a628d56609edc104cb65d9 -workDir "/root/go"

最后在jenkins节点管理中启动节点即可

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值