前言
最近跳槽去了一家新公司,我这个半吊子开发也体验了一回自动化部署,由以前使用脚本手动部署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