CentOS7安装Jenkins-2.346.1,jdk8

高版本的Jenkins需要jdk11甚至jdk17以上,但是公司项目大多都是基于jdk8,为了避免打包保jdk版本异常,直接安装支持jdk8的jenkins。

Linux:centos7

Git:git-1.8.3.1

JDK:jdk-8u371

Maven:maven-3.6.3

Tomcat:tomcat-9.0.65

Jenkins:jenkins-2.346.1(支持jdk8的最新版Jenkins)

  •  JDK配置
# 解压
tar -zxvf jdk-8u371-linux-x64.tar.gz
# 编辑/etc/profile
vim /etc/profile
# 加入如下配置
export JAVA_HOME=/home/jdk1.8.0_371
export JRE_HOME=/home/jdk1.8.0_371/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$PATH:$JAVA_HOME/bin
# 保存退出后,使该配置文件即刻生效
source /etc/profile

# 使用如下命令,能正确显示信息,说明环境配置成功
java -version
  • MAVEN配置
# 解压
tar -xzvf apache-maven-3.6.3-bin.tar.gz

# 编辑/etc/profile
vim /etc/profile
# 加入如下配置
MAVEN_HOME=/home/apache-maven-3.6.3
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin
# 保存退出后,使该配置文件即刻生效
source /etc/profile

# 使用如下命令,能正确显示信息,说明环境配置成功
mvn -version
  • 部署Tomcat

# 下载
# wget 加上 --no-check-certificate 跳过认证
wget --no-check-certificate https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.76/bin/apache-tomcat-9.0.76.tar.gz

# 解压
tar –xvzf apache-tomcat-9.0.65.tar.gz –C /home/

# 编辑/etc/profile
vim /etc/profile

# 加入如下配置
CATALINA_HOME=/home/apache-tomcat-9.0.76
export CATALINA_HOME
 
# 保存退出后,使该配置文件即刻生效
source /etc/profile

 参考:https://www.ahaoyw.com/article/769.html

  • 部署Jenkins服务
# 下载
wget http://updates.jenkins-ci.org/download/war/2.346.1/jenkins.war

# 至tomcat中,注意名称一定为jenkins.war
cp jenkins.war  /home/apache-tomcat-9.0.76/webapps/

#启动
/home/apache-tomcat-9.0.76/bin/startup.sh 

在浏览器地址栏输入IP:8700/jenkins;第一次使用Jenkins,需要核对密钥,该密钥在路径(/root/.jenkins/secrets/initialAdminPassword)的文件中。


记录几个指令

产生密钥

ssh-keygen -t rsa -b 4096 -C "[email protected]"

gitlab使用oauth2授权认证实操

https://oauth2:***key****@git.xxxx.com/xxx/xxx.git


pipeline {
	agent any
	parameters {
		gitParameter name: 'version', description: '选择branch或Tag', type: 'PT_BRANCH_TAG', defaultValue: 'master'
  }
	stages {
		stage('git clone') {
			steps {
					checkout([$class: 'GitSCM',
										branches: [[name: "${params.version}"]],
										doGenerateSubmoduleConfigurations: false,
										extensions: [],
										gitTool: 'Default',
										submoduleCfg: [],
										userRemoteConfigs: [[url: 'https://oauth2:******@git.***.com/***.git']]
									])
			}
		}
		stage ('releases') {
			tools {
				maven "maven3"
				jdk "jdk8"
			}
			steps {
				sh """
				mvn -T 4 clean install  -Dmaven.test.skip=true
                cd test/target/
                zip -q -r test.zip . -x "bin/*"
				"""
			}
			post {
				success {
					archiveArtifacts artifacts: 'test/target/test.zip', onlyIfSuccessful: true
				}
      }
		}
	stage ('deploy') { 
			steps {
				sh """
			    sshpass -p 'xxx' scp -P 22 ${WORKSPACE}/test/target/test.zip [email protected]:/home/tmp/test.zip
				sshpass -p 'xxx' ssh -p 22 [email protected] 'sh /home/test/bin/test.sh start'
				"""
			} 
		}
		stage ('check log') { 
			steps {
				sleep(30)
				sh "sshpass -p 'xxx' ssh -p 22 [email protected] 'tail -n 1000 /home/test/logs/test.log'"
			}
		}
	}
}

你可能感兴趣的:(jenkins)