centos(linux)安装jenkins

官网:https://pkg.jenkins.io/redhat/
jdk版本要和jenkins对上!
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
安装官网进行操作:

 sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
 sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io-2023.key

若出现如下错误:

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
--2022-02-25 16:02:30--  https://pkg.jenkins.io/redhat-stable/jenkins.repo
正在解析主机 pkg.jenkins.io (pkg.jenkins.io)... 151.101.74.133, 2a04:4e42:11::645
正在连接 pkg.jenkins.io (pkg.jenkins.io)|151.101.74.133|:443... 已连接。
错误: 无法验证 pkg.jenkins.io 的由 “/C=US/O=Let's Encrypt/CN=R3” 颁发的证书:
  颁发的证书已经过期。
要以不安全的方式连接至 pkg.jenkins.io,使用“--no-check-certificate”。

则根据提示在命令中添加–no-check-certificate参数,如下:

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo --no-check-certificate
yum install jenkins

如果安装过程中包[Errno 256] No more mirrors to try

执行命令yum clean all

yum makecache

然后重新执行yum install jenkins

卸载步骤

service jenkins stop
 
yum clean all
 
yum -y remove jenkins

find / -iname jenkins | xargs -n 1000 rm -rf

# find命令用来查找“/”下名称符合jenkins的文件
#   -name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写
 
# xargs 命令 可以将管道或标准输入(stdin)数据转换成命令行参数,也能够从文件的输出中读取数据。
#   -n 选项 每次传递几个参数给其后面的命令执行

查看yum仓库中,软件包有哪些版本

yum --showduplicates list jenkins

在这里插入图片描述
选2.164的能运行支持jdk8
在这里插入图片描述

yum install jenkins-2.440

centos7用命令sudo dnf install jenkins安装jenkins时报错如下:
" Public key for jenkins-2.249.1-1.1.noarch.rpm is not installed "
新增 --nogpgcheck 参数,实现不检查Public Key而强制安装, 命令如下:

yum install jenkins-2.440 --nogpgcheck

编辑配置文件:

vim /usr/lib/systemd/system/jenkins.service
systemctl daemon-reload

加上这句

Environment="JAVA_HOME=/opt/module/jdk-21.0.1"

在这里插入图片描述

启动:
service和systemctl的区别
https://blog.csdn.net/qq_38173650/article/details/130119142

直接启动(能成功):

nohup jenkins start &

后台启动(启动不了,不知道为什么,待优化):

service jenkins start
systemctl start jenkins # 启动jenkins服务
# 然后开启另外一个窗口,查看jenkins状态
systemctl status jenkins # 查看jenkins状态
systemctl stop jenkins # 关闭jenkins服务

访问地址:http://127.0.0.1:8080
http://hadoop102:8080/

在这里插入图片描述

参考:
https://blog.csdn.net/qq_34208844/article/details/87865672/

  1. 找到自己的java安装地址
    如果忘记自己的java安装地址, 通过下面命令找到
which java

或者:

find / -name "java"
  1. 修改jenkins的配置文件
    执行命令, 打开jenkins配置文件
vi /etc/init.d/jenkins 

jenkins服务默认监听8080端口,打开文件/usr/lib/systemd/system/jenkins.service,可以修改端口号

Environment="JENKINS_PORT=8080"

在这里插入图片描述
在这里插入图片描述
账号密码:
dcs 123456

二、安装maven

记得修改settings文件,添加阿里镜像

<mirror>
      <id>alimaven</id>
      <mirrorOf>central</mirrorOf>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    </mirror>

maven官网下载:
https://maven.apache.org/download.cgi
在这里插入图片描述

解压

tar -zxvf ../software/apache-maven-3.9.6-bin.tar.gz

在这里插入图片描述
配置环境变量:

vim /etc/profile.d/my_env.sh
#MAVEN_HOME
export MAVEN_HOME=/opt/module/apache-maven-3.9.6
export PATH=$PATH:$MAVEN_HOME/bin

在这里插入图片描述

source /etc/profile
mvn -version

在这里插入图片描述

三、安装git

1、配置好yum源,执行 yum install git 命令即可。

2、执行 git -version 命令验证,出现git版本号则表示安装成功。
在这里插入图片描述

5. 安装插件

Jenkins 启动成功之后,接下来我们安装三个必要的插件:

1、Maven Integration:Maven 构建工具
2、Publish Over SSH:整个工具,将来把 Jenkins 打包好的 jar 上传到应用服务器上。
3、Gitee:协助使用 Gitee 仓库。
4、Kubernetes:安装 Kubernetes 插件。名称通常是 “Kubernetes Continuous Deploy” 或 “Kubernetes”,安装 kubernetes cli 插件,否则会报错
5、Docker CLI、Docker 你已经成功在 Jenkins 中安装了 Docker 插件。接下来,你可以在 Jenkins 作业的构建步骤中使用 Docker 相关的命令,例如构建 Docker 镜像、运行容器
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

然后在可选插件中,搜索 Maven Integration 和 Publish Over SSH 以及 Gitee 三个插件

进入全局工具配置:

在这里插入图片描述

  • 配置java。
    在这里插入图片描述

  • 配置git。记得在云主机执行 yum install git安装git。
    在这里插入图片描述

  • 配置mavem HOME。
    在这里插入图片描述

配置主机和gitee

找到Publish over SSH并配置SSH Servers:
在这里插入图片描述
测试成功就配置好了!
在这里插入图片描述

gitee配置

Gitee API V5 的私人令牌获取地址:
https://gitee.com/profile/personal_access_tokens
配置gitee API令牌
在这里插入图片描述

在这里插入图片描述

jenkins凭据位置:

在这里插入图片描述
这里需要使用用户名和密码设置
在这里插入图片描述

创建一个项目:

配置该项目的源码管理:git
在这里插入图片描述
在这里插入图片描述

在编译的地方可以看到jar被放在哪里了
在这里插入图片描述
脚本编写参考:https://blog.51cto.com/u_10401840/5508140
在这里插入图片描述
在这里插入图片描述

编写gencell-test.sh脚本放在服务器上/home/webapps这个文件夹下:

#! /bin/bash
BUILD_ID=dontKillMe
echo "部署的目录和项目名称"
echo "拷贝jar包到/home/webapps目录"
cp /var/lib/jenkins/workspace/my_test/gencell-test/target/gencell-test.jar /home/webapps/gencell-test.jar
nohup java -jar /home/webapps/gencell-test.jar > out.log 2>&1 &

在这里插入图片描述在这里插入图片描述

在这里插入图片描述
jenkins的shell脚本编写:

echo "运行执行脚本问件"
/home/webapps/gencell-test.sh
cat /home/webapps/out.log
echo "${?}"

自动部署成功!
在这里插入图片描述
代码拉取:
在这里插入图片描述
shell脚本,运行maven构建:
在这里插入图片描述
k8s中运行命令:要安装 kubernetes cli 插件
在这里插入图片描述

token获取脚本:

https://blog.csdn.net/qq_43470725/article/details/135643132

新增k8s:token
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
secret写token值!
在这里插入图片描述
使用Jenkins容器时,是访问不到kubectl命令的和其相关的文件,可以将这个kubectl和相关的文件都复制到挂载的文件夹下面去!如果是单独的服务器,就复制到该服务器下面去

pipeline脚本:

pipeline {
    agent any
    tools {
        maven 'my_maven'
    }
    environment {
        APP_PROFILE='dev'
    }
    stages {
        stage('拉取代码') {
            steps {
                echo '拉取代码开始!'
                git credentialsId: 'e425cf5b-7191-4ac8-8204-eb551a93f68f', url: 'https://gitee.com/deng-chaosheng/gencell.git'
                echo '拉取代码完毕!'
            }
        }
        stage('构建代码') {
            steps {
                echo '构建代码开始!'
                sh 'mvn clean package'
                echo '构建代码成功!'
            }
        }
        stage('部署代码') {
            steps {
                echo "===========================应用部署配置==========================="
                withKubeConfig([credentialsId: 'admin_k8s', serverUrl: 'https://192.168.10.103:6443']) {
                sh '/usr/bin/kubectl apply -f ./gencell-test.yaml'
                }
            }
        }
       
       
    }
}
  • 10
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值