CICD-jenkins搭建和配置

jenkins下载地址

https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.204.2-1.1.noarch.rpm

我感觉做运维最难的不是服务搭建和配置,最难的就是找各种软件包

配置java环境,由于jenkins是java开发的所以要配置java环境,一般java开发都的内存都需要大一点

yum install java-1.8.0-openjdk*
vi /etc/profile
AVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.272.b10-1.el7_9.x86_64
JRE_HOME=$JAVA_HOME/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
source /etc/profile
rpm -ivh jenkins-2.204.2-1.1.noarch.rpm
systemctl start jenkins
chkconfig jenkins on
cat /var/lib/jenkins/secrets/initialAdminPassword
#这个是查看jenkins初始密码的

 

做自动发布必须要下载这些插件

[root@jenkins ~]# ssh-keygen
[root@jenkins ~]# cat ~/.ssh/id_rsa.pub
[root@jenkins ~]# cat ~/.ssh/id_rsa
tar -xvf node-v12.18.1-linux-x64.tar.xz
vim /etc/profile
export PATH=$PATH:/root/node-v12.18.1-linux-x64/bin
source /etc/profile
[root@jenkins client-front]# npm install -g cnpm --registry=https://registry.npm.taobao.org

需要在jenkins这台服务器上面创建公私钥,把公钥发给gitlab上面,私钥发给jenkins插件上面,由于我发布的代码是js的所以要安装node

填写完后点击添加按钮

这里就要写一个脚本在jenkins拉取完代码后就会执行脚本中的内容,这样就实现了最简单的一个jenkins自动发布,脚本要根据你的场景去编写,我这里有一个我写的,可以作为参考

#!/bin/bash

DATE=`date +%F`
name=${DATE}-${git_version}
#进入项目目录,将内容进行打包
get_code(){
cd /var/lib/jenkins/workspace/admin-front/ && \
/root/node-v12.18.1-linux-x64/bin/cnpm install
/root/node-v12.18.1-linux-x64/bin/cnpm run build
tar czf /opt/admin-${name}.tar.gz ./dist/*
}
#将内容通过scp拷贝只web集群组
scp_web_server(){
scp /opt/admin-${name}.tar.gz root@ip:/opt/
ssh root@ip "rm -rf /home/pro/admin/dist/*"
ssh root@ip "tar xf /opt/admin-${name}.tar.gz -C /home/pro/admin/"
}
deploy(){
        get_code
        scp_web_server
}
        deploy

其实jenkins还有很多插件和用法,这里就先简单的介绍一下最简单的发布,下面说一下我发布js时候出现的问题

我把js的命令写进去之后他提示我无法使用,应该是jenkins没有这个命令和环境

解决办法

 

在脚本里也要把你的命令路径写全,这里就可以正常执行node相关命令了

文章可能写的有漏洞,但是最重要的就是要自己去实践,网上的文章一大堆,有些文章可能由于环境问题不能在自己的服务器上面去跑,所以要多试试,多思考

如果大家有什么问题可以评论一下

猜你喜欢

转载自blog.csdn.net/weixin_50801368/article/details/112244020