Jenkins自动化部署(一)前期软件安装

前言

最近跳槽去了一家新公司,我这个半吊子开发也体验了一回自动化部署,由以前使用脚本手动部署jar包迭代成自动化部署😀。

期间踩了无数的坑,贡献出了自己一百多买的小水管服务器,也加了在新公司的第一次班(怒赚一百多加班费)。总算最后结果是好的,基本跑通了完整的流程,想着在这里简单记录一下。

正文

本文主要针对前期各种软件的安装以及环境变量的配置,如果已经有像JDK、Nginx等软件,可以看下一篇文章。

Jenkins其实简单的理解,就是帮你把代码从仓库拉下来,打包,部署。

所以,实际开发中你用到了什么软件,这里我们就需要安装什么软件。这里我从解压即用和需要自己编译两种情况来讲解

解压即用

顾名思义,下载压缩包,上传,解压,配置环境变量,就是这么简单

也许有人会问,为什么要用压缩包解压的形式呢,直接yum安装不好吗?

因为我是个半吊子运维,yum安装的方式不能自定义安装路径(也可能是我不会),所以我个人更喜欢采用压缩包的方式,看得见,摸得着😀。

ok,言归正传,我个人习惯/usr/local下放各种安装的软件,把压缩包上传即可(xshell+xftp,好用,强推)

那如果没有压缩包怎么办呢?我们可以使用wget下载

首先下载wget,这种我们不太可能需要在其他地方使用到的软件直接yum安装就好,简单粗暴

shell 复制代码
yum -y install wget

然后下载所需的软件,这里给出我当时笔记中记录的下载地址,其他的可以自行百度或者直接去官网下载压缩包

shell 复制代码
# Maven下载
wget https://archive.apache.org/dist/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz --no-check-certificate
# Node下载
wget https://nodejs.org/dist/v14.17.4/node-v14.17.4-linux-x64.tar.xz
# jdk11 下载
wget https://download.java.net/java/GA/jdk11/13/GPL/openjdk-11.0.1_linux-x64_bin.tar.gz

Java开发最重要的软件 Jdk

这里细心的小伙伴已经发现,我下载的是Jdk11,那么作为一个你发任你发,我用Java8的程序猿,为什么会选择唯独在Jenkins这里使用Jdk11呢?

实在是没有办法,新版的Jenkins支持的最低Jdk版本是11,虽然官网可以下载到老版本的war包,但是自动下载的插件(Jenkins中的插件)基本都对Jenkins的版本有要求,这里强烈建议,不要较劲,会招致不幸。如果你非要尝试的话,我只能说祝你好运,希望你不要像我一样加班,或者你在一家加班有加班费的公司。

有了压缩包,下一步就是解压,这里直接列出解压命令,其他软件解压命令相同,不再重复

shell 复制代码
tar -zxvf apache-maven-3.8.6-bin.tar.gz # 解压
tar -zcvf test.tar.gz file1 dir2  # 压缩文件 file1 和目录 dir2 到 test.tar.gz

下面来配置环境变量

cd 到/etc目录下,找到profile,直接在末尾添加即可(注意修改目录,不要照抄),这里一次性给出软件的配置信息,后文不再赘述

shell 复制代码
export JAVA_HOME=/usr/soft/jdk-11.0.1
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

export MAVEN_HOME=/usr/soft/apache-maven-3.8.6
export PATH=$MAVEN_HOME/bin:$PATH

export NODEJS_HOME=/usr/soft/node-v14.17.4-linux-x64
export PATH=$NODEJS_HOME/bin:$PATH

export PATH=$PATH:/usr/soft/git/bin

修改完之后不要忘记最重要的刷新配置文件,不然是不会生效的

shell 复制代码
source /etc/profile

注意:如果以前安装过Jdk8,或者没有卸载系统自带的Jdk的话,可能会出现java-version仍然是1.8的情况,此时我们可以修改引用PATH的顺序(针对不是按照这篇文章安装jdk的小伙伴)

shell 复制代码
# 这是调整后的顺序
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH 

Maven

Java打包一定离不开的一个软件就是Maven,他也是一个解压即用的软件,但是与Jdk不同的一点就是,他需要配置环境变量,不然的话下载依赖的时候会怀疑人生的

这里就体现出使用压缩包方式的好处了,直接进入到我们Maven的解压路径,和Windows一样,去修改conf中的settings.xml(别忘了仓库的路径自行指定并创建文件夹)

shell 复制代码
# 指定仓库位置
  <localRepository>/usr/soft/apache-maven-3.8.6/repo</localRepository>
# 配置阿里云镜像
    <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>
    </mirror>

Node

这个说实话因为我是个后端,只是有前端也要自动化部署的需求,所以我在网上找了篇帖子,照着安装的。

和Maven一样,解压,换源,就可以了

shell 复制代码
#设置淘宝镜像源
npm config set registry https://registry.npm.taobao.org
#查看使用的镜像源
npm config get registry
#安装淘宝镜像源
npm install -g cnpm --registry=https://registry.npm.taobao.org

解压源代码,自行编译

以下软件官方提供的压缩包是源代码,需要自行编译

Git

官网下载地址为

shell 复制代码
https://github.com/git/git/releases

编译前安装前置依赖

shell 复制代码
# 一条命令
yum install curl-devel expat-devel gettext-devel 
openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

编译源码到指定目录(不指定目录就和你Windows不更改安装地址一样,直接到了默认的地方了)

shell 复制代码
make prefix=/usr/local/git all
make prefix=/usr/local/git install

Nginx与Git步骤一样,这里不再赘述

后记

到这里,我们就完成了Jenkins需要用到的所有软件的安装,下一步,让我们来安装Jenkins

相关推荐
Lovely_red_scarf26 分钟前
Jenkins系列
jenkins
程序员勋勋2 小时前
【自动化测试】如何在jenkins中搭建allure
职场和发展·jenkins·测试覆盖率
萨格拉斯救世主11 小时前
jenkins使用slave节点进行node打包报错问题处理
运维·jenkins
Narutolxy1 天前
精准优化Elasticsearch:磁盘空间管理与性能提升技巧20241106
大数据·elasticsearch·jenkins
晨欣2 天前
Elasticsearch里的索引index是什么概念?(ChatGPT回答)
大数据·elasticsearch·jenkins
铭毅天下3 天前
基于 Canal + Elasticsearch 的业务操作日志解决方案
大数据·elasticsearch·搜索引擎·全文检索·jenkins
饮啦冰美式3 天前
Jenkins找不到maven构建项目
运维·jenkins·maven
TracyCoder1233 天前
掌握ElasticSearch(八):聚集、文档间的关系
大数据·elasticsearch·jenkins
不惑_3 天前
ES文档:文档操作_doc(7.9.2)
大数据·elasticsearch·jenkins
MetaverseMan4 天前
kubesphere jenkins自动重定向 http://ks-apiserver:30880/oauth/authorize
运维·http·jenkins