项目部署之Jenkins

1. Jenkins介绍

Jenkins 是一款流行的开源持续集成(Continuous Integration)工具,广泛用于项目开发,具有自动化构建、测试和部署等功能。官网: http://jenkins-ci.org/

Jenkins的特征:

  • 开源的 Java语言开发持续集成工具,支持持续集成,持续部署。
  • 易于安装部署配置:可通过 yum安装,或下载war包以及通过docker容器等快速实现安装部署,可方便web界面配置管理。
  • 消息通知及测试报告:集成 RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知,生成JUnit/TestNG测试报告。
  • 分布式构建:支持 Jenkins能够让多台计算机一起构建/测试。
  • 文件识别: Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。
  • 丰富的插件支持:支持扩展插件,你可以开发适合自己团队使用的工具,如 git,svn,maven,docker等。

Jenkins安装和持续集成环境配置

1 )首先,开发人员每天进行代码提交,提交到Git仓库

2)然后,Jenkins作为持续集成工具,使用Git工具到Git仓库拉取代码到集成服务器,再配合JDK,Maven等软件完成代码编译,代码测试与审查,测试,打包等工作,在这个过程中每一步出错,都重新再执行一次整个流程。

3)最后,Jenkins把生成的jar或war包分发到测试服务器或者生产服务器,测试人员或用户就可以访问应用。

2. Jenkins环境搭建

2.1 Jenkins安装配置

  1. 采用YUM方式安装

    加入jenkins安装源:

    sh 复制代码
    sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
    
    sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key

    执行yum命令安装:

    sh 复制代码
    yum install java-17-openjdk
    yum -y install jenkins
  2. 采用RPM安装包方式

    Jenkins安装包下载地址

    sh 复制代码
    wget https://pkg.jenkins.io/redhat-stable/jenkins-2.190.1-1.1.noarch.rpm

    执行安装:

    sh 复制代码
    rpm -ivh jenkins-2.190.1-1.1.noarch.rpm
  3. 配置:

    修改配置文件:

    sh 复制代码
    vi /etc/sysconfig/jenkins

    修改内容:

    sh 复制代码
    # 修改为对应的目标用户, 这里使用的是root
    $JENKINS_USER="root"
    # 服务监听端口
    JENKINS_PORT="16060"

    目录权限:

    sh 复制代码
    chown -R root:root /var/lib/jenkins
    chown -R root:root /var/cache/jenkins
    chown -R root:root /var/log/jenkins

    重启:

    sh 复制代码
    systemctl restart jenkins

    如果启动失败, 出现错误信息:

    sh 复制代码
    Starting Jenkins bash: /usr/bin/java: No such file or directory

    创建JAVA环境的软链接:

    sh 复制代码
    ln -s /usr/local/jdk/bin/java /usr/bin/java
  4. 管理后台初始化设置

    http://192.168.200.100:16060/

    需要输入管理密码, 在以下位置查看:

    sh 复制代码
    cat /var/lib/jenkins/secrets/initialAdminPassword

    按默认设置,把建议的插件都安装上

    这一步等待时间较长, 安装完成之后, 创建管理员用户。配置访问地址:

配置完成之后, 会进行重启, 之后可以看到管理后台:

2.2 Jenkins插件安装

在实现持续集成之前, 需要确保以下插件安装成功。

  • Maven Integration plugin: Maven 集成管理插件。
  • Docker plugin: Docker集成插件。
  • GitLab Plugin: GitLab集成插件。
  • Publish Over SSH:远程文件发布插件。
  • SSH: 远程脚本执行插件。

安装方法:

  1. 进入【系统管理】-【插件管理】

  2. 点击标签页的【可选插件】

    在过滤框中搜索插件名称

  3. 勾选插件, 点击直接安装即可。

注意,如果没有安装按钮,需要更改配置

在安装插件的高级配置中,修改升级站点的连接为:http://updates.jenkins.io/update-center.json 保存

2.3 Git安装配置

  1. yum 安装方式

    sh 复制代码
    yum -y install git
  2. 采用源码包方式安装

    • 安装依赖包

      sh 复制代码
      yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
      yum -y install gcc perl-ExtUtils-MakeMaker
    • 如果之前有安装旧版本, 先做卸载, 没有安装则忽略

      sh 复制代码
      yum remove git
    • 下载源码包

      sh 复制代码
      cd /usr/local
      wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-1.8.3.1.tar.gz
      tar -xvf git-1.8.3.1.tar.gz

      也可以安装其他版本, 地址:https://mirrors.edge.kernel.org/pub/software/scm/git/

    • 编译安装

      sh 复制代码
      cd git-1.8.3.1
      make prefix=/usr/local/git all
      make prefix=/usr/local/git install
      echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc
      source /etc/bashrc
  3. 检查git版本

    sh 复制代码
    [root@localhost jenkins]# git version
    git version 1.8.3.1

2.4 Maven安装配置

  1. 下载安装包

    下载地址: https://maven.apache.org/download.cgi

  2. 解压安装包

    sh 复制代码
    cd /usr/local
    unzip -o apache-maven-3.6.1.zip 

    上传本地仓库并解压

  3. 配置

    环境变量配置

    sh 复制代码
    vi /etc/profile

    增加:

    sh 复制代码
    export MAVEN_HOME=/usr/local/maven/apache-maven-3.6.1
    export PATH=$PATH:$MAVEN_HOME/bin

    如果权限不够,则需要增加当前目录的权限

    shell 复制代码
    chmod 777 /usr/local/maven/apache-maven-3.6.1/bin/mvn

    修改镜像仓库配置:

    sh 复制代码
    vi /usr/local/maven/apache-maven-3.6.1/conf/settings.xml

    需要把本机的仓库打包上传到服务器上(不上传会自动下载)

    然后指定上传后的仓库配置

2.5 Docker安装配置

  1. 更新软件包版本

    sh 复制代码
    yum -y update
  2. 卸载旧版本

    sh 复制代码
    yum -y remove docker  docker-common docker-selinux docker-engine
  3. 安装软件依赖包

    sh 复制代码
    yum install -y yum-utils device-mapper-persistent-data lvm2
  4. 设置yum源为阿里云

    sh 复制代码
    sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  5. 安装后查看docker版本

    sh 复制代码
    docker -v
  6. 启动

    设置开机启动:

    sh 复制代码
    systemctl enable docker

    启动docker

    sh 复制代码
    systemctl start docker

2.6 Docker Registry私有仓库安装配置

3. Jenkins工具配置

  1. 进入【系统管理】--> 【全局工具配置】

  2. MAVEN配置全局设置

  3. 指定JDK配置

  4. 指定MAVEN 目录

  5. 指定DOCKER目录

    如果不清楚docker的安装的目录,可以使用whereis docker 命令查看docker的安装的目录

相关推荐
No Silver Bullet9 分钟前
Nginx 内存不足对Web 应用的影响分析
运维·前端·nginx
wefg111 分钟前
【Linux】文件管理
linux·运维·服务器
leiming615 分钟前
FreeRTOS 的任务与 Linux
java·开发语言
小马爱记录17 分钟前
枚举策略驱动
java
北极熊~~20 分钟前
emqx持久化 Docker 容器中生成的数据并打包新镜像,迁移至新机器运行
运维·docker·容器
Access开发易登软件24 分钟前
Access 窗体中实现数字滚动动画:Timer + Easing 的技术实现
运维·数据库·nginx·microsoft·access
hweiyu0032 分钟前
Linux 命令:split
linux·运维·服务器
tomiatomia1 小时前
MinIO docker 部署使用的几个坑
运维·docker·容器
马猴烧酒.1 小时前
【JAVA数据传输】Java 数据传输与转换详解笔记
java·数据库·笔记·tomcat·mybatis
爱编码的傅同学1 小时前
【常见锁的概念】死锁的产生与避免
java·开发语言