• docker部署Jenkins与任务创建【七千字超详细指南】


    大家好,我是早九晚十二,目前是做运维相关的工作。写博客是为了积累,希望大家一起进步!
    我的主页:早九晚十二

    什么是jenkins

    Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。

    jenkins的功能

    • 持续的软件版本发布/测试项目
    • 监控外部调用执行的工作

    依赖环境

    • jdk1.5及以上(建议使用1.8)

    使用docker快速搭建

    centos搭建docker请参照: centos7.2docker的基本使用

    查看版本

    [root@test ~]# docker --version
    Docker version 20.10.8, build 3967b7d
    [root@test ~]# cat /etc/redhat-release 
    CentOS Linux release 7.9.2009 (Core)
    
    • 1
    • 2
    • 3
    • 4

    下载jenkins镜像

    jenkins官方镜像网站:请点我
    在这里插入图片描述

    使用docker指令拉取镜像

    docker pull jenkins/jenkins:latest
    
    • 1

    当发现一直卡在下载进度条时(如下图),主要是因为拉取国外镜像的限速问题,这时我们可以更换国内的加速源解决此问题。
    在这里插入图片描述

    更换docker加速镜像

    [root@test ~]# vim /etc/docker/daemon.json
    {
    	"registry-mirrors": ["https://yxzrazem.mirror.aliyuncs.com"]
    }
    [root@test ~]# systemctl daemon-reload
    [root@test ~]# systemctl restart docker
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    更换完加速镜像后重新拉取jenkinsj即可
    在这里插入图片描述

    查看jenkins镜像

    [root@test ~]# docker images
    REPOSITORY                            TAG             IMAGE ID       CREATED         SIZE
    jenkins/jenkins                       latest          55860ee0cd73   10 months ago   442MB     
    
    • 1
    • 2
    • 3

    查看jenkins版本

    [root@test ~]# docker inspect jenkins/jenkins|grep -i jenkins.*version
                    "JENKINS_VERSION=2.328",
    
    • 1
    • 2

    创建jenkins存储目录

    [root@test ~]# mkdir /root/jenkins_home
    
    • 1

    构建jenkins容器

    [root@test ~]# docker run -u root -d --name jenkins -p 9988:8080 -p 50000:50000 -v /root/jenkins_home:/var/jenkins_home jenkins/jenkins
    8cbfeeccb96163f29d4eb64b9ee9b46b6206bbb5ceb2adb9bdf5b9aa233d8007
    
    • 1
    • 2

    –name jenkins 代表容器名称
    -p 50000:50000 ,这个端口映射要保持一致,为agent服务端口
    /root/jenkins_home:/var/jenkins_home 为服务挂载到宿主机的路径

    登录jenkins页面

    浏览器访问 http://192.168.120.178:9988,出现下图页面即为正常
    在这里插入图片描述

    查看密码文件

    [root@test ~]# docker exec -ti jenkins bash
    root@8cbfeeccb961:/# cat /var/jenkins_home/secrets/initialAdminPassword 
    b117506d55844bf7bc4aa5bf349cf1ea
    #也可以直接在宿主机操作cat /root/jenkins_home/secrets/initialAdminPassword ,是一样的效果
    
    • 1
    • 2
    • 3
    • 4

    将查询到的密码复制粘贴到管理员页面,并登录
    在这里插入图片描述
    安装完插件后,点击使用admin账户继续
    在这里插入图片描述
    设置访问jenkins仓库的根地址,默认即可
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    配置jenkins插件更新源

    将默认的https://updates.jenkins.io/update-center.json更改https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    安装插件

    如 pipeline/git等插件
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    重启jenkins

    添加agent节点

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    命令行代理方式
    在命令行中启动节点
    curl -sO http://192.168.120.178:9988/jnlpJars/agent.jar
    java -jar agent.jar -jnlpUrl http://192.168.120.178:9988/manage/computer/build/jenkins-agent.jnlp -secret 4c439cd1b1091a4499b4b5274d2cf4f376b0b0b8767830527a91a1c98d1e2ac2 -workDir "/opt/jenkins"
    Or run from agent command line, with the secret stored in a file:
    echo 4c439cd1b1091a4499b4b5274d2cf4f376b0b0b8767830527a91a1c98d1e2ac2 > secret-file
    curl -sO http://192.168.120.178:9988/jnlpJars/agent.jar
    java -jar agent.jar -jnlpUrl http://192.168.120.178:9988/manage/computer/build/jenkins-agent.jnlp -secret @secret-file -workDir "/opt/jenkins"
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    权限管理

    安装授权插件 Role-based Authorization Strategy 用户项目授权。
    在这里插入图片描述
    点击系统管理-全局安全配置进行策略管理。
    在这里插入图片描述
    在这里插入图片描述

    系统配置界面出现一个 “Manage and Assign Roles”,点击进入
    在这里插入图片描述
    在这里插入图片描述

    凭据管理

    点击系统管理-Manage Credentials 设置凭据
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    用户管理

    在这里插入图片描述

    新增用户

    点击create user,填写相关信息后确认。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    系统版本及插件信息

    点击系统管理-关于jenkins,即可查看插件版本等信息。
    在这里插入图片描述
    在这里插入图片描述

    新建任务

    点击面板新建任务
    在这里插入图片描述
    选择构建一个自由模式的软件项目,比较常用、通用
    在这里插入图片描述
    出现以下页面即为创建成功,输入项目描述
    在这里插入图片描述
    点击源码管理,可以设置源码管理方式(可选择Git CVS等,插件管理手动安装即可,我这里只安装的git,所以只显示git和none),以及触发器等(图中设置的是每天0点执行)。
    在这里插入图片描述
    任务构建的主角:构建环境
    选择shell,即支持shell命令
    在这里插入图片描述
    选择shell之后,设置需要定时执行的指令,如不需要可以手动删除在这里插入图片描述
    构建完成之后,点击保存
    在这里插入图片描述
    如下图,出现绿色标记即为成功(前面多次失败是因为容器内没有free命令,临时换了echo命令)
    在这里插入图片描述
    查看控制台输出详情
    在这里插入图片描述
    在这里插入图片描述
    至此,jenkins搭建、配置、及任务创建完成。

    码字不易。如果文章对您有希望的话,请三连支持一波。
    如有问题,欢迎留言,一起探讨,感谢。
    也可关注下方公众号,看到留言后会第一时间回复。

  • 相关阅读:
    华为云Astro的前世今生:用7年时间革新低代码开发观念
    使用Hypothesis生成测试数据
    二十三、生成帮助文档
    一个工地狗变成程序猿的故事
    将uc/OS移植到stm32F103上实现LED灯和串口操作
    c++ 中 拷贝构造函数 和 operator= 函数 的使用区别
    go高并发之路——go语言如何解决并发问题
    【网络编程】详解UDP/TCP套接字的创建流程+守护进程
    CUDA的骨骼化加速
    【Trailhead题目解析】Prepare your salesforce org for users - 5Create Chatter Groups
  • 原文地址:https://blog.csdn.net/tootsy_you/article/details/127687521