安装jenkins
Jenkins由日本人Kohsuke Kawaguchi在Sun公司主导开发,项目最初被称为Hudson。
部署安装
版本选择:
jenkins官方下载链接 中给出了两个版本,一个长期支持版、一个每周更新版本,生产环境通常选择长期支持版本。
同时jenkins 需要jre环境,不同的jenkins 版本对 jre版本存在不同要求。因此在安装前可以查阅jenkins官方给出的参考提前准备好jre环境。
-
本文档演示版本
jre 11 tomcat 8 jenkins 2.452.1
软件安装
-
jdk
【Issue】
java11及以上本版提示缺少java.lang 文件,解决办法从java8中拷贝issue
cp jdk1.8.0_391/jre/lib/fontconfig.bfc /opt/jdk/lib/
cp -a jdk1.8.0_391/jre/lib/fonts/ /opt/jdk/lib/
#apt-get install fontconfig freetype2-demos yum install fontconfig freetype
# 安装jdk wget https://download.java.net/java/ga/jdk11/openjdk-11_linux-x64_bin.tar.gz tar xf openjdk-11_linux-x64_bin.tar.gz -C /opt ln -svf /opt/{jdk-11,jdk} cat>>/etc/profile<<EOF export JAVA_HOME=/opt/jdk export JAVA_JRE=\$JAVA_HOME/jre export CLASSPATH=\$JAVA_HOME/lib:\$JAVA_HOME/jre/lib export PATH=\$JAVA_HOME/bin:\$JAVA_JRE/bin:$PATH:. EOF source /etc/profile
[root@lavm-ioreaqndwv ~]# java -version openjdk version "11" 2018-09-25 OpenJDK Runtime Environment 18.9 (build 11+28) OpenJDK 64-Bit Server VM 18.9 (build 11+28, mixed mode)
-
tomcat
wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.100/bin/apache-tomcat-8.5.100.tar.gz tar xf apache-tomcat-8.5.100.tar.gz -C /opt ln -svf /opt/apache-tomcat-8.5.100/ /opt/tomcat
-
jenkins
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/2.452.1/jenkins.war
cp jenkins.war /opt/tomcat/webapps/
# 前台启动tomcat /opt/tomcat/bin/catalina.sh run
# 守护进程启动 /opt/tomcat/bin/catalina.sh start /opt/tomcat/bin/catalina.sh stop
访问jenkins
# 初始化密码位置 cat /$USER/.jenkins/secrets/initialAdminPassword http://localhost:8080/jenkins/
插件安装
插件存放目录:/root/.jenkins/plugins/*.jpi
-
修改jenkins插件仓库地址
ui操作路径: Dashboard>Manager Jenkins>Plugins>Advanced setting
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
-
安装必要插件
- 跳过证书认证【skip-certificate-check】
- 中文插件 chinese 【Localization: Chinese (Simplified)】
- 在consol的输出中添加时间戳 【Timestamper】
- 清理流水线中产生的历史文件 【Workspace Cleanup】
- 聚合git命令【Git】
- 流水线Pipeline插件 【workflow-aggregator】
- Blue Ocean插件 【BlueOcean Aggregator】
- pipline可视化插件 【Pipeline: Stage View】
- ssh连接到部署主机插件 【Publish Over SSH】
- 把docker作为agent使用【Docker Slaves】
流水线功能验证
流水线目录
/root/.jenkins/jobs/
-
ui操作路径:Dashboard/新建任务/流水线
pipeline { agent any // 在任何可用的节点上执行 Pipeline stages { stage('echo') { // 检出源代码的阶段 steps { echo "abcd" sleep 10 } } } }
密码重置
用户配置相关文件
/root/.jenkins/users/
-
找到配置文件
[root@lavm-ioreaqndwv jenkins]# find / -name config.xml /root/.jenkins/config.xml /root/.jenkins/users/admin_15039310580170810963/config.xml
-
修改密码
密码123456 对应的加密值
$2a$10$4NW.9hNVyltZlHzrNOOjlOgfGrGUkZEpBfhkaUrb7ODQKBVmKRcmK
# vi /root/.jenkins/users/admin_15039310580170810963/config.xml <passwordHash>#jbcrypt:$2a$10$4NW.9hNVyltZlHzrNOOjlOgfGrGUkZEpBfhkaUrb7ODQKBVmKRcmK</passwordHash>
-
重启服务
/opt/tomcat/bin/catalina.sh start
其他启动方式
Jenkins内置jetty应用服务器,Jetty 是 Java 实现的一个轻量级的 Servlet 容器
java -jar jenkins.war
访问jenkins
# 初始化密码位置 cat /$USER/.jenkins/secrets/initialAdminPassword
http://localhost:8080
该方式支持一些参数和java 环境变量
--httpPort=8080
--httpsPort=8083
--prefix=/jenkins
--webroot=/var/cache/jenkins
--argumentsRealm.passwd.admin=admin
--argumentsRealm.roles.admin=admin
--httpsPrivateKey=/var/lib/jenkins/pk
--httpsCertificate=/var/lib/jenkins/cert
-Djenkins.install.runSetupWizard=true
-Djenkins.security.ApiTokenProperty.adminCanGenerateNewTokens=false
-Dcom.cloudbees.hudson.plugins.folder.computed.ThrottleComputationQueueTaskDispatcher.LIMIT=10
参考: