当前位置: 首页 > news >正文

尚品汇-自动化部署-Jenkins的安装与环境配置(五十六)

目录:

自动化持续集成

(1)环境准备

(2)初始化 Jenkins 插件和管理员用户

(3)工作流程

(4)配置 Jenkins 构建工具

自动化持续集成

互联网软件的开发和发布,已经形成了一套标准流程,最重要的组成部分就是持续集成

持续集成(采蜜) 

持续集成的目的,就是让产品可以快速迭代,同时还能保持高质量。

它的核心措施是,代码集成到主干之前,必须通过自动化测试。只要有一个测试用例失败,就不能集成。

持续交付

持续交付(Continuous delivery)指的是,频繁地将软件的新版本,交付给质量团队或者用户,以供评 审。如果评审通过,代码就进入生产阶段。

持续部署

持续部署(continuous deployment)是持续交付的下一步,指的是代码通过评审以后,自动部署到生产环境。

持续部署的目标是,代码在任何时刻都是可部署的,可以进入生产阶段。

持续部署的前提是能自动化完成测试、构建、部署等步骤。

jekins是基于java开发的一个自动化持续集成交付的一个工具,里面包含很多插件可以实现强大功能

(1)环境准备

安装JAVA 运行环境

第一步:上传或下载安装包

cd  /usr/local

jdk-8u152-linux-x64.tar.gz

并删除原有的JDK!

[root@localhost local]# rpm -qa | grep jdk

copy-jdk-configs-2.2-3.el7.noarch

java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64

java-1.8.0-openjdk-headless-1.8.0.131-11.b12.el7.x86_64

[root@localhost local]# rpm -e --nodeps java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64

[root@localhost local]# rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.131-11.b12.el7.x86_64

第二步:解压安装包

tar -zxvf jdk-8u152-linux-x64.tar.gz

第三步:建立软连接

ln -s /usr/local/jdk1.8.0_152/  /usr/local/jdk

第四步:修改环境变量

vim /etc/profile

      export JAVA_HOME=/usr/local/jdk

export JRE_HOME=$JAVA_HOME/jre

export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib

export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

通过命令source /etc/profile让profile文件立即生效

source /etc/profile

第五步、测试是否安装成功

  • 、使用javac命令,不会出现command not found错误

②、使用java -version,出现版本为java version "1.8.0_152"

③、echo $PATH,看看自己刚刚设置的的环境变量配置是否都正确

安装maven

第一步:上传或下载安装包

cd  /usr/local

apache-maven-3.6.1-bin.tar.gz

第二步:解压安装包

tar  -zxvf  apache-maven-3.6.1-bin.tar.gz

第三步:建立软连接

ln  -s  /usr/local/apache-maven-3.6.1/  /usr/local/maven

第四步:修改环境变量

vim /etc/profile

      export MAVEN_HOME=/usr/local/maven

export PATH=$PATH:$MAVEN_HOME/bin

通过命令source /etc/profile让profile文件立即生效

source /etc/profile

第五步、测试是否安装成功

mvn -v

Maven配置国内镜像 

 

 

安装git

 yum -y install git

 svn

安装docker

第一步:安装必要的一些系统工具

yum install -y yum-utils device-mapper-persistent-data lvm2

第二步:添加软件源信息

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

第三步:更新并安装Docker-CE

yum makecache fast

yum -y install docker-ce

第四步:开启Docker服务

service docker start

第五步、测试是否安装成功

docker -v

安装Jenkins

第一步:上传或下载安装包

在/usr/local 目录下创建一个文件夹

mkdir jenkins

cd  /usr/local/jenkins

jenkins.war 传入到/usr/local/jenkins

第二步:启动

nohup java -jar  /usr/local/jenkins/jenkins.war >/usr/local/jenkins/jenkins.out &

第二步:访问

防火墙必须关闭:systemctl stop/disable firewalld

http://ip:8080

如果访问不到,则杀死进程,重启!

# ps -ef | grep jenkins

# kill -9 -pid

# nohup java -jar  /usr/local/jenkins/jenkins.war >/usr/local/jenkins/jenkins.out &

(2)初始化 Jenkins 插件和管理员用户

配置国内的镜像

官方下载插件慢 更新下载地址

cd {你的Jenkins工作目录}/updates  #进入更新配置位置

cd /root/.jenkins updates 文件夹

进入updates 文件夹 然后执行下面这个命令!

sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json

这是直接修改的配置文件,如果前边Jenkins用sudo启动的话,那么这里的两个sed前均需要加上sudo{给权限}

重启Jenkins,安装插件试试,简直超速!!

ps -ef | grep jenkins

使用命令杀死进程

Kill -9 pid

nohup java -jar  /usr/local/jenkins/jenkins.war >/usr/local/jenkins/jenkins.out &

更改地址,写入配置default.json

 启动: 

访问jenkins

http://ip:8080

解锁jenkins

cat /var/jenkins_home/secrets/initialAdminPassword

获取管理员密码 主要看箭头指向那个路径就cat 那个路径就可以找到管理员密码了!

选择“继续”

选择“安装推荐插件”

如果你不配置国内的镜像,则这些下载速度非常慢!

如果出现错误:最好重试。

插件安装完成,创建管理员用户

保存并完成

进入完成页面

说明:登录忘记密码参考Linux下Jenkins忘记管理员密码解决措施 - 程序员大本营

如果等待时间太长:那么我们可以将jenkins 杀掉,重新启动!

(3)工作流程

(4)配置 Jenkins 构建工具

全局配置

 

配置jdk

JAVA_HOME:/usr/local/jdk

 配置git

查看git安装路径:which git

/usr/bin/git

配置maven

MAVEN_HOME:/usr/local/maven

相关文章:

  • 十分钟实现内网连接,配置frp
  • JavaWeb图书借阅系统
  • MapBox Android版开发 6 关于Logo
  • [java][代码]DateUtil用于处理日期和时间
  • excel怎么转换json
  • C++初阶:STL详解(九)——stacke和queue的模拟实现
  • kmeans聚类分析 生活使用案例
  • 解决Windows远程桌面 “为安全考虑,已锁定该用户账户,原因是登录尝试或密码更改尝试过多,请稍后片刻再重试,或与系统管理员或技术支持联系“问题
  • Java之多态
  • 关于贪心算法
  • 【系统交付资料】软件文档交付清单整理套用原件(Word,PPT,Excel)
  • 企业如何保护自身通信渠道被黑客攻击
  • 【蚂蚁HR-注册/登录安全分析报告】
  • kubernetes存储入门(kubernetes)
  • 鸿蒙面试题库收集(一):ArkTSArkUI-基础理论
  • 分享的文章《人生如棋》
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • 《Java编程思想》读书笔记-对象导论
  • 【译】React性能工程(下) -- 深入研究React性能调试
  • angular2开源库收集
  • centos安装java运行环境jdk+tomcat
  • EOS是什么
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • PV统计优化设计
  • React系列之 Redux 架构模式
  • vue2.0开发聊天程序(四) 完整体验一次Vue开发(下)
  • Vultr 教程目录
  • 爱情 北京女病人
  • 得到一个数组中任意X个元素的所有组合 即C(n,m)
  • 搞机器学习要哪些技能
  • 构建二叉树进行数值数组的去重及优化
  • 汉诺塔算法
  • 理解 C# 泛型接口中的协变与逆变(抗变)
  • 如何邀请好友注册您的网站(模拟百度网盘)
  • 如何用Ubuntu和Xen来设置Kubernetes?
  • 什么软件可以提取视频中的音频制作成手机铃声
  • 2017年360最后一道编程题
  • 基于django的视频点播网站开发-step3-注册登录功能 ...
  • ​LeetCode解法汇总2670. 找出不同元素数目差数组
  • ​Linux Ubuntu环境下使用docker构建spark运行环境(超级详细)
  • ​插件化DPI在商用WIFI中的价值
  • # Pytorch 中可以直接调用的Loss Functions总结:
  • # windows 安装 mysql 显示 no packages found 解决方法
  • #pragma once与条件编译
  • (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (HAL)STM32F103C6T8——软件模拟I2C驱动0.96寸OLED屏幕
  • (ZT)北大教授朱青生给学生的一封信:大学,更是一个科学的保证
  • (差分)胡桃爱原石
  • (附源码)springboot优课在线教学系统 毕业设计 081251
  • (南京观海微电子)——COF介绍
  • (终章)[图像识别]13.OpenCV案例 自定义训练集分类器物体检测
  • (轉貼) 2008 Altera 亞洲創新大賽 台灣學生成果傲視全球 [照片花絮] (SOC) (News)
  • (总结)(2)编译ORB_SLAM2遇到的错误
  • (最完美)小米手机6X的Usb调试模式在哪里打开的流程
  • .NET Core、DNX、DNU、DNVM、MVC6学习资料