Ubuntu安装jenkins完成自动化构建

这篇具有很好参考价值的文章主要介绍了Ubuntu安装jenkins完成自动化构建。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

本篇文章介绍Ubuntu系统中安装jenkins,并使用jenkins完成自动化构建。
Jenkins自动构建部署流程通过git拉取代码,然后用maven打包成jar包,然后通过docker完成项目部署。这里的服务器需要安装jdk(openjdk也行),maven,git,docker,mysql,其他中间件(redis,mq等)。

1.maven安装

Ubuntu的包管理工具是apt,不同操作系统的包管理工具不同,这里使用对应的管理工具进行安装,我这里是Ubuntu,使用apt

# 1. 更新包索引
sudo apt update
# 2. 安装maven
sudo apt install maven
# 3. 验证是否安装成功
mvn -version
# 4. 环境变量配置
export MAVEN_HOME=/usr/share/maven
export PATH=${MAVEN_HOME}/bin:${PATH}
# 5. 环境变量更新
source ~/.bashrc
# 6.验证环境变量是否配置成功
echo MAVEN_HOME
echo PATH
## 看到输出东西就证明成功了

2. jenkins安装

这里我的安装过程有点崎岖,我这就放两种方式吧。但是前提都是确保你的服务器安装了jdk或者openjdk

(1)apt方式安装
# 1. 更新包索引
sudo apt update
# 2. 添加jenkins GPG密钥
wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
# 进行第二步的时候可能报错 “gpg: no valid OpenPGP data found” ,是wget命令版本过旧问题,这里用下面命令即可
wget --no-check-certificate -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
# 3. 将jenkins存储库添加到系统
sudo sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
# 4. 更新包索引
sudo apt update
# 5. 安装jenkins
sudo apt install jenkins
# 6. 启动jenkins
sudo systemctl start jenkins
## 启动jenkins后可以使用下面命令查看
sudo systemctl status jenkins # 查看运行状态
lsof -i:8080 # jenkins默认端口是8080,查看端口运行状态
(2)war包方式

我这里使用前面的apt方式,安装jenkins一直失败不成功,解决一个问题又有新的问题,这里我又通过war包方式安装(这里我也不知道这个方式需不需要基于前面的步骤,我这直接下载war后,就成功了)

# 1. 下载jenkins的war包
# 1.1 这是下载最新版的jenkins,但是最新版的jenkins需要jdk11以上版本
wget http://updates.jenkins-ci.org/latest/jenkins.war
# 1.2 我这里是jdk8版本,所以下载2.346版本的jenkins
wget https://get.jenkins.io/war-stable/2.346/jenkins.war
# 2. 到war包目录下,启动war包就行了,使用java -jar
nohup java -jar jenkins.war > jenkins.log &
## 这里使用nohup + & 后台启动war包,将jenkins日志输出到jenkins.log中
(3)jenkins启动

启动jenkins后,可以通过lsof命令查看端口占用来看jenkins是否启动成功,启动成功后,日志会有个密码,初次登陆jenkins使用这个密码。
ubuntu安装jenkins,jenkins,ubuntu登陆成功后,安装推荐插件

ubuntu安装jenkins,jenkins,ubuntu首次安装,可能会像我这样出现很多错误,这是由于网络原因,我们给jenkins配置一个国内镜像重启一下就行了。
ubuntu安装jenkins,jenkins,ubuntu
找到配置文件的位置,使用文本编辑器修改配置文件的镜像

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

ubuntu安装jenkins,jenkins,ubuntu
ubuntu安装jenkins,jenkins,ubuntu
ubuntu安装jenkins,jenkins,ubuntu进入这个界面,jenkins就安装完成了。

3.jenkins配置完成自动化 构建

新建任务,选择构建一个maven项目
ubuntu安装jenkins,jenkins,ubuntu在源码管理填入自己的git仓库地址,然后在下面选择账号,新安装的Jenkins没有账号,这里可以新增一个(注意:这里填的git账号需要保证可以拉取到这个git项目)
ubuntu安装jenkins,jenkins,ubuntu选择执行shell脚本,输入需要执行的shell

# $WORKSPACE这个会自动找到Jenkins的工作目录
ls $WORKSPACE/target
# 我这里将Jenkins目录下打包的项目jar包,复制到制定目录并重命名为demo.jar
cp $WORKSPACE/target/rabbitmq.jar /data/rabbimq/demo.jar
# 切换到jar所在目录,然后执行目录下的start.sh脚本
cd /data/rabbimq
sh start.sh

ubuntu安装jenkins,jenkins,ubuntu这里看一下jar所在目录下的文件
ubuntu安装jenkins,jenkins,ubuntuDockerfile为构建docker镜像使用

FROM openjdk:8-jre
WORKDIR /
ADD /demo.jar /demo.jar
EXPOSE 9000
ENTRYPOINT ["java","-Xms256m","-Xmx512m","-jar","demo.jar"]

start.sh作用:
创建需要的相关路径,停止容器,删除容器,删除镜像,重新构建镜像,启动项目,具体如下:

# 定义变量(后面通过$变量名使用)
dir=/data/rabbimq
name=demo
logs=/data/rabbimq/logs
port=9000
temp=/data/rabbimq/temp
if [ ! -d "$dir" ];then
  mkdir -p $dir
else
  echo "文件夹已经存在"
fi
if [ ! -d "$logs" ];then
  mkdir -p $logs
fi
date=`date +%Y%m%d%H%M%S`
# 停止容器(按照容器id停止)
docker stop `docker ps -a|grep $name|awk '{print $1}'`
# 删除容器(按照容器id删除)
docker rm `docker ps -a|grep $name|awk '{print $1}'`
# 删除镜像
docker rmi `docker images|grep $name|awk '{print $1}'`:`docker images|grep $name|awk '{print $2}'`
# 构建镜像(名称为名字加当前时间,可以防止镜像名称重复)
docker build -t $name:$date .
# 启动镜像,挂载需要的目录
docker run -itd -p $port:$port -v $logs:/logs -v $temp:/temp --name $name $name:$date  bash

这些做完后,点击立即构建就可以完成Jenkins自动构建部署了。

4.测试

编写一个测试接口

@Api(tags = "jenkins测试")
@RestController
@RequestMapping("/test/jenkins")
public class JenkinsTest {

    @GetMapping("/print")
    @ApiOperation("输出")
    public Result test(@RequestParam String text) {
        return Result.success("Jenkins接收到参数:" + text);
    }
}

提交到git
ubuntu安装jenkins,jenkins,ubuntu
点击立即构建,等待完成,查看构建日志,可以看到是拉取到的我刚刚提交的最新代码。
ubuntu安装jenkins,jenkins,ubuntu
完成后,访问我的swagger地址,可以看到刚刚新写的接口已经部署上去了,为最新的代码,查看服务器docker容器,也正在运行,到此就说明成功。
ubuntu安装jenkins,jenkins,ubuntu
ubuntu安装jenkins,jenkins,ubuntu文章来源地址https://www.toymoban.com/news/detail-663276.html

到了这里,关于Ubuntu安装jenkins完成自动化构建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 17.Jenkins完成自动化 拉取,编译,打包,部署

    1.1安装gitee插件到jenkins  gitee默认不允许内网触发。----必须要配置内网穿透 NATAPP -       思考: 我们的项目和jenkins是不是都在一台服务器上。因为jenkins它所在的服务器非常耗费资源,因为jenkins本身要集成很多软件。如果这时项目也部署到当作jenkins所在的服务器,势必会导致

    2024年02月04日
    浏览(48)
  • Jenkins自动化构建

    Jenkins 是一款开源 CICD 软件,用于自动化各种任务,包括构建、测试和部署软件 Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序 安装方法 因为 Jenkins 本身是没有在 dnf 的软件仓库包中的,所以我们需要连接 Jenkins 仓库: wget 是 Linux 中下载文件的

    2024年02月15日
    浏览(42)
  • Jenkins部署与自动化构建

    docker 安装 Jenkins 拉取稳定版Jenkins镜像 注意: docker拉取镜像的时候要拉取 jenkins/jenkins 而不是jenkins 要装稳定版,否则后面会有很多插件装不上 挂载对应的容器卷 修改插件下载镜像源为清华镜像(可以先直接尝试一下是否可以安装成功) 访问web页面 http://IP:8090/ 去查看第一次

    2023年04月08日
    浏览(43)
  • jenkins自动化构建保姆级教程(持续更新中)

    访问jenkins官网 https://www.jenkins.io/,进入到首页 点击【Download】按钮进入到jenkins下载界面 左侧显示的是最新的长期支持版本,右侧显示的是最新的可测试版本(可能不稳定),建议使用最新的长期支持版本,这里我使用2.401.3 使用虚拟机centos7系统,采用docker-compose方式安装 虚

    2024年02月13日
    浏览(45)
  • Jenkins + Gitlab 实现项目自动化构建及部署

      通俗来讲就是本地项目 push 到 gitlab 后, Jenkins 能够识别到项目的更新并自动构建部署;  本文以实际操作的方式来表述详细配置过程及避开配置 Jenkins 时的坑. 默认电脑已经安装了虚拟机, 默认gitlab 上已经有了你想要部署的项目, 部署了 maven 和 jdk 并配置了环境变量!!! 1 执行

    2024年02月16日
    浏览(58)
  • Jenkins自动化构建部署前端项目(Linux+gitee)

    本文讲述了Jenkins自动化构建部署前端项目,内容包括Linux系统安装Jenkins、如何配置构建项目并发布到目标服务器。 因公司系统项目众多,前端项目打包麻烦,项目代码管理混乱,因此需要gitee+Jenkins做自动化构建,优化项目打包流程及代码管理。 本次教程可实现最简单的自动

    2024年02月03日
    浏览(57)
  • Jenkins-pipeline自动化构建Java应用

    本实验操作需要:Jenkins,git代码仓库(如gitlab,gitee等都可以),maven,docker,docker镜像仓库(habor,nexus或者阿里云ACR等)以及k8s环境。 本例需要Jenkins插件如下: Git Git Parameter Git Pipeline for Blue Ocean GitLab Credentials Credentials Binding Blue Ocean Blue Ocean Pipeline Editor Blue Ocean Core JS Pi

    2024年02月11日
    浏览(48)
  • Jenkins从配置到实战(二) - Jenkins如何在多台机器上自动化构建

    Jenkins的Master-Slave分布式构建,就是通过将构建过程分配到从属Slave节点上,从而减轻Master节点的压力,而且可以同时构建多个,有点类似负载均衡的概念。 简单理解就是,将Jenkins服务器上的构建任务分配到其他机器上,可以是linux,也可以是windows,这样不仅减轻了Jenkins服务

    2024年02月16日
    浏览(56)
  • Jenkins+Maven+Gitlab+Tomcat 自动化构建打包,部署

    1、安装服务 Jenkins工具、环境、插件配置 全局变量配置 Manage JenkinstoolsJDK 安装 安装插件 Deploy to container 安装此插件,才能将打好的包部署到tomcat上     配置国内mvn源 创建maven项目 1  2   3    4    5    6    7    8     9 10  

    2024年02月05日
    浏览(58)
  • DevOps—基于 Jenkins 构建 Vue 前端工程自动化流程

    一个完整的生产环境的 CI/CD 流程,往往会包括以下这些阶段: 编码 → 提交 → 构建 → 测试 → 交付 → 部署 这里只是演示,就省略了测试相关阶段,只包含提交、构建、发布、部署,一个简单的流程如下: vue 应用构建依赖于 Nodejs,需要在 Jenkins 上安装 Nodejs 插件,并且进

    2024年02月15日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包