• Jenkins


    一、Jenkins的安装

    1、环境准备

    a、JDK安装,并配置Java环境变量  /etc/profile

    b、maven安装

    c、git安装

    2、安装Jenkins

    1、可以通过Java -jar jenkins.war 包的形式,也可以自己安装tomcat来编译jenkins项目

    2、生成日志文件地址: /var/log/jenkins/jenkins.log 

    3、创建Jenkins用户

      注意,以后已Jenkins来执行一些sh脚本时,可能涉及到权限不足的情况,此时可以给Jenkins赋予root权限

    在Ubuntu下,当执行apt-get install方式安装Jenkins的时候,会自动创建jenkins用户,这是一个没有用户目录的账号。
    检查了一下,居然在nogroup组中,下面的调整修复了这两个权限问题:
    1.从/etc/group文件中在nogroup中删除jenkins账号
    2.将jenkins账号分别加入到root组中
        gpasswd -a root jenkins
    3.修改/etc/default/jenkins文件中,
    # user id to be invoked as (otherwise will run as root; not wise!)                                                                                                               
    JENKINS_USER=root
    JENKINS_GROUP=root
    可以修改为root权限运行
    重启服务器,搞定。

    若还是权限不足,也可以
    改变此目录的属组:执行chown,改变属组,属主,这种方式不推荐使用

    4、改变Jenkins端口,默认8080,这个端口经常可能被占用,可以在/etc/default/jenkins中配置自己想要的端口号

    5、启动后,开放相应远程端口,打开Jenkins界面、安装相应插件和创建一个Jenkins用户

    到这里Jenkins基本就安装完毕了

    二、Jenkins的使用

    这里已构建一个spring boot+maven+git项目为例

    1、确保自己Jenkins的Maven Integration plugin, Git plugin都已经安装

    2、关于git免密登录ssh来操作远程代码仓库

      a、在Jenkins、git远程机器中生成私钥和公钥

      b、在git远程仓库(gitee、github、gitLab、coding),ssh设置里放入自己的公钥

      c、配置好后,可以拉一下代码,测试一下

    3、在Jenkins里全局工具配置里,设置自己的maven和git地址

    4、在Jenkins里的Credentials(凭证)中设置自己的私钥(全局的)(再瞧瞧,丢了什么配置)

      都可以在全局配制、工具配置里设置自己想要的效果,下面新建项目

    a、项目名称、项目描述和构建类型和策略

     * 丢弃旧的构建 可有效解决磁盘存储问题 

     b、源码管理,这里只能是ssh形式

    c、构建触发器和构建环境(按需配置)

    d、执行策略

    1、拉取代码后,执行maven命令 clean之后install或者package,后缀参数可以加用来忽略一个test文件啊等

    2、post steps如果一直显示unstable状态,那么可以选中中间哪个选项

    3、执行脚本

    (先stop已存在java进程,找出相关进程的pid,在kill -9 pid)

    (将刚才Jenkins中打包的项目target中的jar包copy到自己想要的目录,方便为主,且可以备份,这里可以判断copy目标目录是否存在该文件,先执行备份再执行拷贝覆盖)

    (重新启动该jar(springboot项目的启动形式),并设置日记目录等)

    这里执行脚本的时候可能涉及到上述所说的权限问题

    重启jenkins:
    sudo /etc/init.d/jenkins start
    sudo /etc/init.d/jenkins restart
    sudo vi /var/lib/jenkins/config.xml
  • 相关阅读:
    mysql 时间戳 转 时间
    VSCode搭建VUE 开发环境
    虚拟通信
    JavaScript 获取客户端计算机硬件及系统信息
    Thinkphp关联模型BELONGS_TO
    docker部署rancher踩坑篇
    青龙面板 脚本 依赖库下载安装
    Linux 随记
    Tekton DAG代码
    手写Spring valar
  • 原文地址:https://www.cnblogs.com/J-Cooper/p/8964626.html
Copyright © 2020-2023  润新知