linux系统构建持续集成环境(jenkins)

简介: linux系统构建持续集成环境(jenkins)

1、问题场景和jenkins的作用

项目现场要实现持续集成、流水线作业场景,就需要jenkins来进行操作。

jenkins的主要作用是将项目中重复执行的工作自动化的执行。具体作用主要有:

1、软件的持续构建和测试;

2、监视job的执行;

3、项目源代码修改的检测;

4、分布式构建。

此外,Jenkins代码开源,用户可以自己编写插件。jenkins可以实现很多的功能。

2、环境要求

服务器(centos、ubuntu等系统)、java环境(jdk-8u351-linux-x64.tar.gz)、jenkins 2.54版本jar包

3、部署安装教程

3.1 java部署

3.1.1 下载

下载官网:https://www.oracle.com/java/technologies/downloads/,这里需要注册一个oracle账号,只有登录之后才可以下载,不然直接wget会报错403,下载的是javaSE版本

3.1.2 安装部署

将刚才下载的文件包上传到/root下,执行以下命令就可以安装(java、tomcat等是二进制安装,解压后就可以运行了)

mkdir /usr/java

chmod +x jdk-8u333-linux-x64.tar.gz

tar xzf jdk-8u351-linux-x64.tar.gz -C /usr/java

执行使其生效:

source /etc/profile

3.1.3 设置环境变量

在 /etc/profile最后添加

# set java environment

export JAVA_HOME=/usr/java/jdk1.8.0_351

export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib

export PATH=$JAVA_HOME/bin:$PATH

JAVA_HOME就是您这边解压后安装包的绝对路径,这里下载的版本是jdk-8u351-linux-x64.tar.gz,路径是/usr/java/jdk1.8.0_351

3.1.4 查看环境是否合适

[root@ceshi ]# java -version

java version "1.8.0_351"

Java(TM) SE Runtime Environment (build 1.8.0_351-b10)

Java HotSpot(TM) 64-Bit Server VM (build 25.351-b10, mixed mode)


如上输出就表示正常的

3.2 jenkins的安装

3.2.1 下载并移动位置

官网:https://www.jenkins.io/

centos系列安装教程:https://www.jenkins.io/doc/book/installing/linux/#red-hat-centos

这里直接下载war包使用

下载地址:https://get.jenkins.io/war/

比如这里下载2.354,2.354是支持java8的

直接在服务器内部下载

wget  https://get.jenkins.io/war/2.354/jenkins.war

mkdir /usr/jenkins;mv jenkins.war /usr/jenkins

注;一个小错误,这里之前下载了2.378的版本,最后运行发现报错,最后发现这个版本支持的java是11,需要更换java或者是赵支持java8的版本的jenkins使用


报错信息如下:

[root@ceshi /]# cat nohup.out

Running with Java 8 from /usr/java/jdk1.8.0_351/jre, which is older than the minimum required version (Java 11).

Supported Java versions are: [11, 17]

See https://jenkins.io/redirect/java-support/ for more information.

3.2.2 启动jar包(安全组先放行8080端口)

nohup java -jar /usr/jenkins/jenkins.war &

第一次启动Jenkins时,出于安全考虑,Jenkins会自动生成一个随机的按照口令。注意控制台输出的口令,复制下来,然后在浏览器输入:http://ip:8080,接着粘贴口令,进入安装界面


查看默认口令:cat  /root/.jenkins/secrets/initialAdminPassword

此时就进入了安装界面


登录服务器查看默认密码

[root@ceshi /]# cat  /root/.jenkins/secrets/initialAdminPassword

84b6b952279541f9a63df1bae1718789

输入密码,继续。然后选择自动安装插件


等待安装完成,服务器需要可以连接网络,不然是没办法下载软件包的(这边测试25M贷款,大概用了20分钟)



3.2.3 创建用户名密码并登录

这里创建的账户是Admin123,密码也是Admin@123


登录成功后界面


到此,jenkins安装成功

相关文章
|
7天前
|
敏捷开发 运维 测试技术
构建高效自动化运维体系:基于容器技术的持续集成与持续部署实践
【4月更文挑战第30天】在数字化转型的浪潮中,企业对软件交付速度和质量的要求日益提高。自动化运维作为提升效率、确保稳定性的关键手段,其重要性不言而喻。本文将探讨如何利用容器技术构建一个高效的自动化运维体系,实现从代码提交到产品上线的持续集成(CI)与持续部署(CD)。通过分析现代容器技术与传统虚拟化的差异,阐述容器化带来的轻量化、快速部署及易于管理的优势,并结合实例讲解如何在实际环境中搭建起一套完善的CI/CD流程。
|
7天前
|
Prometheus 监控 Cloud Native
构建高效可靠的Linux服务器监控体系
【4月更文挑战第30天】 在维护企业级Linux服务器的稳定性和性能方面,一个周全的监控体系是至关重要的。本文将探讨如何利用开源工具和实践构建一个高效、灵活且用户友好的监控系统。我们将重点讨论核心组件的选择、配置、报警机制以及数据分析方法,旨在帮助读者打造一个能够实时响应并预防潜在问题的监控环境。
|
7天前
|
运维 Kubernetes 持续交付
构建高效自动化运维系统:基于容器技术的持续集成与持续部署实践
【4月更文挑战第30天】 在快速发展的云计算时代,传统的运维模式已无法满足敏捷开发和快速迭代的需求。本文将介绍如何利用容器技术搭建一套高效自动化运维系统,实现软件的持续集成(CI)与持续部署(CD)。文章首先探讨了现代运维面临的挑战,接着详细阐述了容器技术的核心组件和工作原理,最后通过实际案例展示了如何整合这些组件来构建一个可靠、可扩展的自动化运维平台。
|
8天前
|
运维 Kubernetes 持续交付
构建高效自动化运维体系:基于容器技术的持续集成与持续部署(CI/CD)实践
【4月更文挑战第29天】 随着云计算和微服务架构的兴起,自动化运维已成为提升企业IT效率、确保系统稳定性的关键因素。本文旨在探讨如何利用容器技术构建一套高效的自动化运维体系,实现软件开发过程中的持续集成(CI)与持续部署(CD)。文章首先分析了传统运维模式面临的挑战,然后详细介绍了基于Docker和Kubernetes等容器技术的CI/CD流程设计与实施策略,并通过一个实际案例来展示该方案在提高部署频率、降低人力成本及提升系统可靠性方面的显著优势。
|
14天前
|
敏捷开发 缓存 Devops
构建高效持续集成系统的策略与实践
【4月更文挑战第23天】 在快速迭代的软件开发过程中,持续集成(CI)是确保代码质量和加速交付的关键。本文深入探讨了构建和维护一个高效CI系统的方法和最佳实践。从自动化测试到部署策略,文中细致分析了各环节的优化技巧,并提供了解决常见问题的实用建议。通过案例研究和工具选型,读者将获得构建强大CI流程的具体指导,以支持敏捷和DevOps环境下的高质量软件发布。
|
19天前
|
机器学习/深度学习 数据采集 人工智能
构建未来:移动应用开发中的人工智能集成
【4月更文挑战第18天】 在本文中,我们将深入探讨移动应用开发中人工智能(AI)的集成。我们将分析AI如何改变移动应用的功能和用户体验,以及开发者如何利用这种技术来提升他们的产品。我们还将讨论一些挑战和解决方案,以及AI在未来移动应用开发中的潜在影响。
|
20天前
|
jenkins Java 持续交付
实战指南:运用Jenkins实现Java项目的持续集成与自动化部署
【4月更文挑战第17天】Jenkins是一款强大的开源CI/CD工具,广泛用于Java项目的自动化构建、测试和部署。通过配置Jenkins环境、创建Job、设定构建触发器和步骤,实现持续集成和部署。集成Maven、Git等工具,确保代码质量并加速上线。持续部署阶段,Jenkins可将工件发布至远程服务器或云环境,实现高效、稳定的自动化流程。实践过程中,关注工作流优化、配置备份和服务器状态监控,以提升整体开发效率和软件质量。
|
21天前
|
SQL 机器学习/深度学习 数据可视化
Pandas与其他库的集成:构建强大的数据处理生态
【4月更文挑战第16天】Pandas在数据处理中扮演关键角色,但与其他Python库如NumPy、Matplotlib/Seaborn、Scikit-learn和SQL的集成使其功能更加强大。结合NumPy进行数值计算,搭配Matplotlib/Seaborn实现高效可视化,与Scikit-learn联用加速机器学习,以及与SQL集成便于数据库操作,这些都构建了一个全面的数据处理生态系统,提升了数据科学家的工作效率,助力于数据价值的发掘。
|
25天前
|
存储 持续交付 API
GitLab CI/CD简介:构建持续集成与持续交付的全方位指南
GitLab CI/CD简介:构建持续集成与持续交付的全方位指南
33 0
GitLab CI/CD简介:构建持续集成与持续交付的全方位指南
|
29天前
|
机器学习/深度学习 人工智能 算法
构建未来:移动应用开发中的人工智能集成
【4月更文挑战第8天】在数字化时代的浪潮中,移动应用已不仅仅是连接用户与信息的桥梁,而是成为了智能化服务和解决方案的前沿阵地。随着人工智能(AI)技术的不断成熟,其在移动应用开发中的集成已成为推动创新的关键动力。本文将探讨人工智能如何优化移动应用的功能、提升用户体验,并且分析集成过程中面临的挑战及解决策略,以期为开发者和技术决策者提供参考和启示。