CICD---docker安装Jenkis

Docker安装Jenkins 2.346.3

1、安装JDK11

 yum install -y java-11-openjdk.x86_64
2、拉去Jenkis镜像,最新LTS版本的Jenkins 2.346.3
docker pull jenkins/jenkins:2.346.3-2-lts-jdk11
3、宿主机上创建Jenkins数据目录,并授权

准备一个用于存储Jenkins数据的目录。因为我们用Docker安装的,容器的数据如果没有进行持久化当容器被删除了会出现数据丢失。

mkdir -p /home/jenkis
chmod 777 -R  /home/jenkis
4、创建jenkis容器
docker run -itd --name jenkins \
-p 8080:8080 \
-p 50000:50000 \
-e JAVA_OPTS="-Dorg.apache.commons.jelly.tags.fmt.timeZone='Asia/Shanghai" \
--privileged=true  \
--restart=always \
-v /home/jenkis:/var/jenkins_home jenkins/jenkins:2.346.3-2-lts-jdk11
#说明:
#容器运行后需要开放端口。
#8080默认Jenkins web页面使用的端口。
#50000是Agent连接Server用到的通信端口。(后面安装JenkinsAgent的时候要注意网络连通性)
#时区配置,定义默认的时区。(JAVA_OPTS环境变量为修改时间配置,否则可能jenkins的时间显示有问题!)
#设置特权级运行的容器
#随docker容器启动
#持久化数据目录,挂载本地的数据目录
5、验证

启动Jenkins容器后。然后docker logs 看下日志。在日志中可以获取到激活Jenkins需要用到的密钥字符串。保存下来。

密钥:0cd27e8392fd49ef955f4145f6217616
#查看jenkins容器运行状态
[root@Devops6 ~]#docker ps
CONTAINER ID   IMAGE                                 COMMAND                  CREATED         STATUS         PORTS                                                                                      NAMES
d6139736ef4c   jenkins/jenkins:2.346.3-2-lts-jdk11   "/usr/bin/tini -- /u…"   5 seconds ago   Up 3 seconds   0.0.0.0:8080->8080/tcp, :::8080->8080/tcp, 0.0.0.0:50000->50000/tcp, :::50000->50000/tcp   jenkins

#查看jenkins容器log
[root@Devops6 ~]#docker logs jenkins
……
Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:

0cd27e8392fd49ef955f4145f6217616

This may also be found at: /var/jenkins_home/secrets/initialAdminPassword
……
6、访问web界面并输入密码
  1. 访问http://192.168.3.101:8080/开始配置Jenkins。

  2. 填写解锁密钥

  3. 可通过如下2种方式来获取密码:

    (1)查看docker里的日志文件
    [root@Devops6 ~]#docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
    0cd27e8392fd49ef955f4145f6217616
    
    (2)查看jenkins容器日志
    如上面验证5
    
  4. 输入密码后,这边的加载一会儿,耐心等一会儿:

  5. 加载完成后,出现安装插件界面:

    ​ 点击,我们先不安装插件,待后续根据需求再安装相应的插件即可:(因为不好先安装个Chinese中文插件)

  6. 插件安装完成后创建管理员用户

    账户:admin 
    密码:123456
    
  7. 实例配置使用默认地址

    http://192.168.3.101:8080/

  8. 开始使用jenkins

  9. 配置Jenkis插件源:

    外网用户:访问插件源是否正常
    		 https://updates.jenkins.io/update-center.json
             另外,也可以在Available点击这里的check now
    内网用户: 使用nexus3做一个代理,通过Nexus代理仓库的方式缓存到内网;
    -------------------------------------------------------
    手动上传插件在Plugin Manager-->Advanced(高级)-->Deploy Plugin
    Jenkins插件下载地址:
    https://plugins.jenkins.io/
    --------------------------------------------------------
    更换清华源:访问
    https://mirrors.tuna.tsinghua.edu.cn/
    Jenkis-->updates-->dynamic-stable-2.346.3
    点击update-center.json,然后复制其浏览器地址即可:
    https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/dynamic-stable-2.346.3/update-center.json
    得到清清华源地址后,我们再次按下面方式进行配置
    Plugin Manager-->Advanced(高级)-->升级站点
    将https://updates.jenkins.io/update-center.json替换掉
    
7、安装配置Jenkins Agent

agent就是真正去执行任务的节点。

1.新建节点,并填写参数配置
·首先,我们需要在JenkinsServer上面添加节点。
点击Manege Jenkins-Manage Nodes and Clouds:
点击+ New Node:
填写Node name,Type选择Permanent Agent,点击Create:
配置执行器数量,远程工作目录,标签,Usage内容,其余不变,填写完成后,点击保存:
·另外:如果这里配置了自定义工作目录的话,那么这里的值就会替代上面我们指定的远程工作目录!
Number of executors
你可以这样理解,我在jenkins上运行一个job,它就会占用一个执行器。它所运行作业的数量,作业的并发数。
所以你在调并发的时候,如果出现队列在排队的情况,那可能是因为这里的执行器数量设置不够!
点击Save后,就可以看到创建好的agent节点了:
2.获取agent启动程序并运行agent
  • 在首页点击刚才新建的节点node_01

  • 这里agent有2种方式可以连接到jenkins master,我们使用第二种方式:

    1、在命令行中启动节点
    java -jar agent.jar -jnlpUrl http://192.168.3.101:8080/computer/node%5F01/jenkins-agent.jnlp -secret f6c903a9dde3e702cf830736b5c32ec484c3c35c08f698a0aca7e465bf2f234d -workDir "/home/jenkisagent"
    
    2、Run from agent command line, with the secret stored in a file:
    echo f6c903a9dde3e702cf830736b5c32ec484c3c35c08f698a0aca7e465bf2f234d > secret-file
    java -jar agent.jar -jnlpUrl http://192.168.3.101:8080/computer/node%5F01/jenkins-agent.jnlp -secret @secret-file -workDir "/home/jenkisagent"
    
  • 第二种方法操作步骤

    mkdir -p /home/jenkisagent
    echo f6c903a9dde3e702cf830736b5c32ec484c3c35c08f698a0aca7e465bf2f234d > secret-file
    #编写后台启动脚本
    vim vim start.sh
    #!/bin/bash
    nohup java -jar agent.jar -jnlpUrl http://192.168.3.101:8080/computer/node%5F01/jenkins-agent.jnlp -secret @secret-file -workDir "/home/jenkisagent"
    
    ##设置开启启动
    ⚠️ 注意:如果使用rc.local和crontab设置开机启动的话,是没有效果的;这里采用systemd方法来设置服务开机启动。
    vim /etc/systemd/system/jenkins-agent.service
    
    [Unit]
    Description=Jenkins Agent service
    After=network.target
    
    [Service]
    Type=simple
    User=root
    WorkingDirectory=/home/jenkinsagent
    ExecStart=/usr/bin/java -jar /home/jenkisagent/agent.jar -jnlpUrl http://192.168.3.101:8080/computer/build01/jenkins-agent.jnlp -secret @/home/jenkisagent/secret-file
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
    
    ##重新加载配置文件
    systemctl daemon-reload
    systemctl enable jenkins-agent
    
    ##重启测试启动情况
    ps -ef |grep java 
    systemctl status jenkins-agent
    
    ##可以通过sytemctl命令来启动/重启/关停这个服务的:
    systemctl start/restart jenkins-agent
    systemctl stop jenkins-agent
    
    ##jenkins server节点和agent节点已全部安装成功。
    
    #给虚机做一个快照
    

    ​​

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值