在Ubuntu机器上使用war包安装Jenkins

因为一些需求需要迁移之前使用的Jenkins,原来是按照官方文档使用apt方式安装的,这次搬迁后的机器由于默认不通外网(可以通过代理走外网),因此趁此机会,尝试改用war包方式安装

系统Ubuntu 18.04,默认JDK设为8,以JDK 11启动Jenkins主节点,以JDK 8启动Jenkins子节点

注:实际子节点为另一台机器,默认设为8是因为机器上其他应用需要运行在该环境下,以JDK 8启动节点是因为自动化代码不支持JDK 11

注:JDK 10在执行 java -version时也会被认为是JDK 11,但实际无法启动Jenkins,需要安装真正的JDK 11

由于直接启动后,关闭终端就会导致进程终止,因此需要使用 nohup进行后台启动,同时为了方便启动/终止Jenkins进程,这里使用脚本来实现

在jenkins.war同目录下新建jenkins.sh文件

#!/bin/bash

pid=$(ps -ef | grep jenkins.war | grep -v 'grep' | awk '{print $2}')
if [ "$1" = "start" ]; then
    if [ -n "$pid" ]; then
        echo 'jenkins is running...'
    else
        ### java启动服务 配置java安装根路径,和启动war包存的根路径
        nohup /usr/lib/jvm/java-11-openjdk-amd64/bin/java -jar /home/soul/jenkins.war >/dev/null 2>&1 &
    fi
elif [ "$1" = "stop" ]; then
    exec ps -ef | grep jenkins | grep -v grep | awk '{print $2}' | xargs kill -9
    echo 'jenkins is stopped...'
else
    echo "Please input like this:"./jenkins.sh start" or "./jenkins.sh stop""
fi

之后即可使用 ./jenkins.sh start./jenkins.sh stop来启停Jenkins

首次启动进行初始化配置时,由于无法连接外网,因此会下载不了插件,此时可选择配置代理,之后即可正常下载插件

注:代理地址不要带http协议头

首先在/etc/systemd/system目录下创建rc-local.service文件

[Unit]
Description=/etc/rc.local Compatibility
ConditionPathExists=/etc/rc.local

[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99

[Install]
WantedBy=multi-user.target

然后在/etc下创建rc.local文件,并设置权限 sudo chmod +x rc.local,文件内容如下,中间注释以下,exit 0以上的部分是启动所需命令,意为使用soul账号执行启动命令(否则会用root账号启动,与原先soul启动的不是同一个Jenkins)

#!/bin/bash
#
rc.local
#
This script is executed at the end of each multiuser runlevel.

Make sure that the script will "exit 0" on success or any other
value on error.

#
In order to enable or disable this script just change the execution
bits.

#
By default this script does nothing.

/bin/su - soul -c "/home/soul/jenkins.sh start"

exit 0

最后执行 sudo systemctl enable rc-local将服务设为开机启动,重启机器即可

工具位置中,JDK指定路径为/usr/lib/jvm/java-8-openjdk-amd64/jre

Original: https://www.cnblogs.com/soultraitor/p/16655100.html
Author: SoulTraitor
Title: 在Ubuntu机器上使用war包安装Jenkins

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/577976/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • [ Skipper ] 快速 LVL

    https://www.cnblogs.com/yeungchie/ ski-flashlvl ski-flashlvl top1.gds cell1 top2.gds cell2…

    Linux 2023年6月7日
    0109
  • Seata-初体验以及避坑

    Seata是什么 这里引用官方解释 Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 …

    Linux 2023年6月7日
    0104
  • 性能测试 CPU利用率低 响应时间长的瓶颈分析

    压测中Vuser增加,TPS上不去,意味着Response Time在增加,需要找出响应时间增加的原因: 1、网络带宽 在压力测试中,有时候要模拟大量的用户请求,如果单位时间内传递…

    Linux 2023年6月8日
    072
  • 剑指offer计划23( 数学简单)—java

    1.1、题目1 剑指 Offer 39. 数组中出现次数超过一半的数字 1.2、解法 万能哈希表,数学方法看到我要吐血。。。 1.3、代码 class Solution { pub…

    Linux 2023年6月11日
    0107
  • VMware ESXi 7.0 U2 SLIC 2.6 & Unlocker 集成 Intel NUC 网卡、USB 网卡和 NVMe 驱动

    404. 抱歉,您访问的资源不存在。 可能是URL不正确,或者对应的内容已经被删除,或者处于隐私状态。 [En] It may be that the URL is incorre…

    Linux 2023年5月27日
    0105
  • Docker快速部署clickhouse

    Docker快速部署clickhouse Clickhouse特点 完备的DBMS:不仅是个数据库,也是个数据库系统 列存储和数据压缩:典型的olap数据库特性 向量化并行:利用C…

    Linux 2023年6月8日
    0101
  • ECMAScript 6.0

    本博客所有文章仅用于学习、研究和交流目的,欢迎非商业性质转载。 博主的文章没有高度、深度和广度,只是凑字数。由于博主的水平不高,不足和错误之处在所难免,希望大家能够批评指出。 博主…

    Linux 2023年6月13日
    092
  • 聊斋-河间生

    人的善恶在转瞬之间就可以改变,发现错误时往往已经差之千里了,但是发现错误及时改正这不也是很美好的一件事情么?河间生就是讲了这么一件事情。 主角简介:河间某生,家里比较富裕,烧火用的…

    Linux 2023年6月14日
    0126
  • zookeeper 配置文件详情

    目录结构 目录名作用 bin 存放系统脚本 conf 存放配置文件 contrib zk附加功能支持 dist-maven maven仓库文件 docs zk文档 lib 依赖的第…

    Linux 2023年6月8日
    074
  • 2021年3月-第02阶段-前端基础-Flex 伸缩布局-移动WEB开发_flex布局

    移动web开发——flex布局 1.0 传统布局和flex布局对比 1.1 传统布局 兼容性好 布局繁琐 局限性,不能再移动端很好的布局 1.2 flex布局 操作方便,布局极其简…

    Linux 2023年6月8日
    0104
  • Spring Boot:使用Redis存储技术

    综合概述 Redis是一个开源免费的高性能key-value数据库,读取速度达110000次/s,写入速度达81000次/s。Redis支持丰富的数据类型,如Lists, Hash…

    Linux 2023年5月28日
    0114
  • X86 assembly guide

    This guide describes the basics of 32-bit x86 assembly language programming, covering a sm…

    Linux 2023年6月7日
    0145
  • GO redis

    csharp;gutter:true; package main</p> <p>import ( "fmt" "github….

    Linux 2023年5月28日
    0108
  • mac redis安装与使用,连接远程服务器 redis

    brew install redis@6.2 #后面@接版本号可指定版本,也可以不指定版本 brew services start redis redis-cli redis-cl…

    Linux 2023年5月28日
    0105
  • 罗德岛

    自从转行以后就建博了,一直没有动手写内容,今天开始写。 主要记录技术上的积累和项目上的工作感悟。 这里就是罗德岛,就在这里跳。 Original: https://www.cnbl…

    Linux 2023年6月6日
    094
  • MobaXterm左侧没有文件列表,没有SCP,不显示文件夹问题处理

    一般情况是你设置的session属性问题,具体做法是右键你的session,选edit session,SSH 如下图: 选择 SFTP protocol 并勾选 Follow S…

    Linux 2023年5月27日
    0152
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球