编辑
2022-10-12
jenkins
00

目录

Jenkins介绍
1、Jenkins介绍
2、Jenkins安装
3、修改配置
4、一键安装 Jenkins 脚本
5、首次访问及插件安装
6、邮件无法发送

Jenkins介绍

1、Jenkins介绍

Jenkins是一个独立的开源软件项目,是基于Java开发的一种CI(Continuous integration,持续集成) &CD (Continuous Delivery,持续交付)工具,用于监控持续重复的工作,旨在提供一个开放易用的软件 平台,使软件的持续集成变成可能。其前身是商业软件Hudson。可用于自动化各种任务,如构建,测 试和部署软件。 Jenkins 作为一个可扩展的自动化服务器,Jenkins 可以用作简单的 CI 服务器,或者变成任何项目的持续 交付中心。 Jenkins 只是一个调度平台,其本身并不能完成项目的构建部署 Jenkins 需要安装各种插件,可能还需要编写Shell,python脚本等才能调用和集成众多的组件来实现复杂的 构建部署功能

建议同时执行任务数量和CPU核心数一致

2、Jenkins安装

Jenkins支持多种部署和运行方式,可通过系统包、Docker或者通过一个独立的Java 程序

Jenkins支持多种安装方法

  • docker
  • 通用java包
  • war文件
  • 二进制包

相关信息

我这使用jar启动,安装前环境准备

sh
#关闭防火墙和SELinux#设置语言环境,防止后期Jenkins汉化出问题 [root@jenkins ~]# localectl set-locale LANG=en_US.UTF-8 #JAVA 环境 jenkins基于JAVA实现,安装jenkins前需要先安装 JDK #安装openjdk [root@ubuntu1804 ~]#apt update [root@ubuntu1804 ~]#apt -y install openjdk-8-jdk [root@ubuntu1804 ~]#java -version openjdk version "1.8.0_242" OpenJDK Runtime Environment (build 1.8.0_242-8u242-b08-0ubuntu3~18.04-b08) OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode) #或者安装oracle的jdk [root@ubuntu1804 /usr/local/src]# tar xvf jdk-8u192-linux-x64.tar.gz [root@ubuntu1804 /usr/local/src]# ln -sv /usr/local/src/jdk1.8.0_192/ /usr/local/jdk [root@ubuntu1804 /usr/local/src]# ln -sv /usr/local/jdk/bin/java /usr/bin/java #命令软连接 [root@ubuntu1804 /usr/local/src]# vim /etc/profile export JAVA_HOME=/usr/local/jdk export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar [root@ubuntu1804 /usr/local/src]# source /etc/profile [root@ubuntu1804 /usr/local/src]# java -version java version "1.8.0_192" Java(TM) SE Runtime Environment (build 1.8.0_192-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.192-b12, mixed mode) #或者安装JDK-11版 [root@ubuntu2004 ~]#apt -y install openjdk-11-jdk [root@rocky8 ~]#yum -y install java-11-openjdk #Ubuntu 二进制包安装 jenkins wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add - Then add the following entry in your /etc/apt/sources.list: deb https://pkg.jenkins.io/debian-stable binary/ Update your local package index, then finally install Jenkins: sudo apt-get update sudo apt-get install jenkins #deb 包下载地址国内镜像站点 https://mirror.tuna.tsinghua.edu.cn/jenkins/debian-stable/ [root@ubuntu1804 ~]#apt update [root@ubuntu1804 ~]#apt -y install openjdk-8-jdk daemon [root@ubuntu1804 ~]#wget https://mirror.tuna.tsinghua.edu.cn/jenkins/debianstable/jenkins_2.289.2_all.deb [root@ubuntu1804 ~]#dpkg -i jenkins_2.289.2_all.deb [root@ubuntu1804 ~]#systemctl status jenkins.service rpm包国内镜像下载链接 https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/ #查看第一次登录密码 grep -A2 password /var/log/jenkins/jenkins.log #查看第一次的登录密码 [root@centos8 ~]#cat /var/lib/jenkins/secrets/initialAdminPassword cf4cd0d45e6041a3ba0dcaec345b105a

3、修改配置

sh
#修改配置 [root@centos8 ~]#grep -v "#" /etc/sysconfig/jenkins | grep -v "^$" JENKINS_HOME="/var/lib/jenkins" JENKINS_JAVA_CMD="" JENKINS_USER="jenkins" JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true \ -Dcom.sun.management.jmxremote \ -Dcom.sun.management.jmxremote.port=12345 \ -Dcom.sun.management.jmxremote.authenticate=false \ -Dcom.sun.management.jmxremote.ssl=false \ -Djava.rmi.server.hostname="10.0.0.101" \" JENKINS_PORT="8080" JENKINS_LISTEN_ADDRESS="" JENKINS_HTTPS_PORT="" JENKINS_HTTPS_KEYSTORE="" JENKINS_HTTPS_KEYSTORE_PASSWORD="" JENKINS_HTTPS_LISTEN_ADDRESS="" JENKINS_DEBUG_LEVEL="5" JENKINS_ENABLE_ACCESS_LOG="no" JENKINS_HANDLER_MAX="100" JENKINS_HANDLER_IDLE="20" JENKINS_ARGS="" #可选启动参数:优化参数 JENKINS_JAVA_OPTIONS="-server -Xms1g -Xmx1g -Xss512k -Xmn1g -XX:CMSInitiatingOccupancyFraction=65 -XX:+UseFastAccessorMethods -XX:+AggressiveOpts -XX:+UseBiasedLocking -XX:+DisableExplicitGC -XX:MaxTenuringThreshold=10 -XX:NewSize=2048M -XX:MaxNewSize=2048M -XX:NewRatio=2 -XX:PermSize=128m -XX:MaxPermSize=512m -XX:CMSFullGCsBeforeCompaction=5 -XX:+ExplicitGCInvokesConcurrent -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -Djava.awt.headless=true -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname="10.0.0.101" " #默认jenkins服务使用jenkins 帐号启动,将文件复制到生产服务器可能会遇到权限问题,因此修改为 root用户,需要重启 vim /etc/default/jenkins JENKINS_USER=root JENKINS_GROUP=root

4、一键安装 Jenkins 脚本

sh
#!/bin/bash # #******************************************************************** #Author: wangxiaochun #QQ: 29308620 #Date: 2020-02-15 #FileName: install_jenkins.sh #URL: http://www.wangxiaochun.com #Description: 本脚本只支持Jenkins-2.319.3前版本 #Copyright (C): 2020 All rights reserved #******************************************************************** JENKINS_VERSION=2.319.3 #JENKINS_VERSION=2.346.2 URL="https://mirrors.tuna.tsinghua.edu.cn/jenkins/debian-stable/jenkins_${JENKINS_VERSION}_all.deb" #URL="https://mirrors.aliyun.com/jenkins/debian-stable/jenkins_${JENKINS_VERSION}_all.deb" #URL="https://mirrors.aliyun.com/jenkins/debian-stable/jenkins_2.303.2_all.deb" #URL="https://mirrors.tuna.tsinghua.edu.cn/jenkins/debian-stable/jenkins_2.289.3_all.deb" #URL="https://mirrors.aliyun.com/jenkins/debian-stable/jenkins_2.289.3_all.deb" #URL="https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.289.3-1.1.noarch.rpm" GREEN="echo -e \E[32;1m" END="\E[0m" HOST=`hostname -I|awk '{print $1}'` . /etc/os-release color () { RES_COL=60 MOVE_TO_COL="echo -en \\033[${RES_COL}G" SETCOLOR_SUCCESS="echo -en \\033[1;32m" SETCOLOR_FAILURE="echo -en \\033[1;31m" SETCOLOR_WARNING="echo -en \\033[1;33m" SETCOLOR_NORMAL="echo -en \E[0m" echo -n "$1" && $MOVE_TO_COL echo -n "[" if [ $2 = "success" -o $2 = "0" ] ;then ${SETCOLOR_SUCCESS} echo -n $" OK " elif [ $2 = "failure" -o $2 = "1" ] ;then ${SETCOLOR_FAILURE} echo -n $"FAILED" else ${SETCOLOR_WARNING} echo -n $"WARNING" fi ${SETCOLOR_NORMAL} echo -n "]" echo } install_java(){ if [ $ID = "centos" -o $ID = "rocky" ];then #yum -y install java-1.8.0-openjdk yum -y install java-11-openjdk else apt update #apt -y install openjdk-8-jdk apt -y install openjdk-11-jdk fi if [ $? -eq 0 ];then color "安装java完成!" 0 else color "安装java失败!" 1 exit fi } install_jenkins() { wget -P /usr/local/src/ $URL || { color "下载失败!" 1 ;exit ; } if [ $ID = "centos" -o $ID = "rocky" ];then yum -y install /usr/local/src/${URL##*/} ystemctl enable jenkins systemctl start jenkins else apt -y install daemon net-tools || { color "安装依赖包失败!" 1 ;exit ; } dpkg -i /usr/local/src/${URL##*/} fi if [ $? -eq 0 ];then color "安装Jenkins完成!" 0 else color "安装Jenkins失败!" 1 exit fi } start_jenkins() { systemctl is-active jenkins if [ $? -eq 0 ];then echo color "Jenkins安装完成!" 0 echo "-------------------------------------------------------------------" echo -e "访问链接: \c" ${GREEN}"http://$HOST:8080/"${END} else color "Jenkins安装失败!" 1 exit fi while :;do [ -f /var/lib/jenkins/secrets/initialAdminPassword ] && \ { key=`cat /var/lib/jenkins/secrets/initialAdminPassword` ; break; } sleep 1 done echo -e "登录秘钥: \c" ${GREEN}$key${END} } install_java install_jenkins start_jenkins

5、首次访问及插件安装

  • 首次访问需提供秘钥
sh
cat /var/lib/jenkins/secrets/initialAdminPassword 7d19df2dd74b48a9a48e9534456d0c92

注意

首次访问不安装任何插件,直接进入系统。因为默认去国外网站下载插件,速度很慢需要配置加速网站

  • 如果显示 jenkins 已离线 ,将/var/lib/jenkins/hudson.model.UpdateCenter.xml文件中的更新检 查地址改成国内镜像地址,如清华大学地址,然后重启 jenkins 即可:

    xml
    [root@ubuntu1804 ~]#vim /var/lib/jenkins/hudson.model.UpdateCenter.xml <?xml version='1.1' encoding='UTF-8'?> <sites> <site> <id>default</id> #修改此行为下面行 <url>https://updates.jenkins.io/update-center.json</url> <url>https://jenkins-zh.gitee.io/update-center-mirror/tsinghua/updatecenter.json</url> </site> </sites>
  • 配置插件加速

    sh
    #插件安装目录 /var/lib/jenkins/plugins/ #更改 Jenkins 的镜像源为国内镜像站 [root@jenkins ~]#sed -i.bak 's#updates.jenkins.io/download#mirror.tuna.tsinghua.edu.cn/jenkins#g' /var/lib/jenkins/updates/default.json [root@jenkins ~]#sed -i 's#www.google.com#www.baidu.com#g' /var/lib/jenkins/updates/default.json #注意:如果是tomcat运行war包方式需要下面路径 [root@jenkins ~]#sed -i.bak 's#https://updates.jenkins.io/download#https://mirror.tuna.tsinghua.edu.cn/jenkins#g' /root/.jenkins/updates/default.json #将升级站点URL替换成下面国内镜像地址 在系统管理的插件管理中,高级的最下面升级站点URL https://mirror.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json #再次安装插件即可 #绿色版方法 #离线插件包复制至插件安装目录,解包即可 -----------汉化---------- #安装Chinese插件即可
  • 在Jenkins页面加速方法

  1. 登录到Jenkins服务器。导航到Jenkins的主页。
  2. 点击右侧菜单中的"Manage Jenkins"(管理Jenkins)选项。
  3. 在管理Jenkins页面,找到并点击"Manage Plugins"(管理插件)选项。
  4. 在插件管理页面,切换到"Advanced"(高级)选项卡。
  5. 在"Update Site"(更新站点)下方的文本框中,输入清华大学的插件源URL:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
  6. 点击"Submit"(提交)按钮保存更改。
  7. 然后,Jenkins会从清华大学的源获取插件列表。

6、邮件无法发送

  • 新版2.387.1中配置SMTP邮件时如果使用smtp协议无法发送邮件,勾选使用SSL协议再测试发送邮件

  • 发送邮件的邮箱要和管理员邮箱一致

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:笑一个吧~

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 本文为博主「笑一个吧~」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 许可协议。转载请注明出处!