在Ubuntu机器上使用war包安装Jenkins
因为一些需求需要迁移之前使用的Jenkins,原来是按照官方文档使用apt方式安装的,这次搬迁后的机器由于默认不通外网(可以通过代理走外网),因此趁此机会,尝试改用war包方式安装
环境目标
系统Ubuntu 18.04,默认JDK设为8,以JDK 11启动Jenkins主节点,以JDK 8启动Jenkins子节点
注:实际子节点为另一台机器,默认设为8是因为机器上其他应用需要运行在该环境下,以JDK 8启动节点是因为自动化代码不支持JDK 11
安装步骤
安装包准备
由于Jenkins最后一版支持Java 8的版本为2.356,因此从https://get.jenkins.io/war/2.356/下载该包并上传至服务器/home/soul目录下(soul是我创建的账号名)
Java环境安装
参考https://www.cnblogs.com/soultraitor/p/16654030.html,由于内网软件源上有这两个软件,因此可以直接安装,否则需要更换外网软件源,并开启代理安装
注:JDK 10在执行java -version时也会被认为是JDK 11,但实际无法启动Jenkins,需要安装真正的JDK 11
Jenkins启动
war包安装启动可参考官方文档:https://www.jenkins.io/doc/book/installing/war-file/,安装后默认安装位置为/home/soul/.jenkins目录
由于直接启动后,关闭终端就会导致进程终止,因此需要使用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 -Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8 -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协议头
设置开机启动Jenkins
首先在/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将服务设为开机启动,重启机器即可
Jenkins子节点配置
工具位置中,JDK指定路径为/usr/lib/jvm/java-8-openjdk-amd64/jre
在Ubuntu机器上使用war包安装Jenkins的更多相关文章
- 阿里云上如何利用war包安装jenkins
一. 前提条件:已安装jdk和tomcat 如何安装,请参考<如何在阿里云上部署war包到tomcat服务器> 二. 下载war包 下载地址:http://mirrors.jenkins- ...
- war包安装jenkins
转自:https://blog.51cto.com/bigboss/2129358 系统环境: CentOS 7.5 1804 IP:192.168.1.3 关闭selinux.firewalld j ...
- 在ubuntu机器上部署php测试环境
在ubuntu机器上部署php测试环境 一.部署环境 Ubuntu11.10_X86_32,编译安装相应的软件:nginx+mysql+php. 二.软件安装 2.1 软件下载 libiconv-1. ...
- Ubuntu 20.04 使用deb包安装mysql
Ubuntu 20.04 使用deb包安装mysql 1.环境 WSL2 + Ubuntu 20.04 2.下载mysql的Ubuntu / Debian安装包 MySQL :: Download M ...
- 阿里云上如何利用yum安装jenkins
一. 安装jdk 确保安装jenkins前jdk已经安装,如何安装见<如何在阿里云上部署war包到tomcat服务器> 二. 安装jenkins 使用以下命令安装jenkins: wget ...
- Jenkins持续集成(上)-Windows下安装Jenkins
环境:Windows 2008 R2.Jenkins2.235.1: 概要 前面写过一篇文章,<自动发布-asp.net自动发布.IIS站点自动发布(集成SLB.配置管理.Jenkins)> ...
- 如何在阿里云上部署war包到tomcat服务器
一. 准备工作:xshell和xftp 首先我们得确保,xshell能够远程连接阿里云ECS,xftp能够保证windows和linux之间的文件传输(当然也可以选择FileZilla,但xftp感觉 ...
- 二、WebSphere Application Server上部署war包并访问
进入我们was服务器控制台之后我们直接按照下图操作: 2.选择要上传的war包,下一步 3.一直下一步,步骤4注意填好“上下文根”,然后继续下一步,直到完成. 4.点击保存到主配置 5.应用程序> ...
- struts2使用Convention Plugin在weblogic上以war包部署时,找不到Action的解决办法
环境: struts 2.3.16.3 + Convention Plugin 2.3.16.3 实现零配置 现象:以文件夹方式部署在weblogic(10.3.3)上时一切正常,换成war包部署,运 ...
- Sae上传war包找不到编译文件
最近在试新浪的sae平台,有个问题困扰了几天,现在想来还是自己对JAVA的理解不深入,这里写下仅作记忆. 问题:在整微信公众号平台进开发者中心的时候,token验证一直是失败的.但是项目在本地的环境中 ...
随机推荐
- 时序数据库 InfluxDB 第一篇 安装部署
使用场景: 最近项目上遇到大数据存储的问题,一个IOT融合项目,涉及到大量的工控监测数据存储.当前存储到关系库中的数据已经达到2亿条了.做了很多优化,查询还是很慢.便想着是否有更好的解决方案. 了解到 ...
- 每日一库:fsnotify简介
fsnotify是一个用Go编写的文件系统通知库.它提供了一种观察文件系统变化的机制,例如文件的创建.修改.删除.重命名和权限修改.它使用特定平台的事件通知API,例如Linux上的inotify,m ...
- MATLAB入门小操作(数据类型)
这是一篇有助于快速上手MATLAB软件的文章(新手向).(学习过其他的语言更容易看懂) 数据类型 这篇文章我想从MATLAB中的数据类型出发去列举一些经常使用的操作.MATLAB中的数据类型包括其他语 ...
- HDLbits_Conwaylife
题目介绍 题目链接 Conwaylife 简介 题目要求我们实现一个康威生命游戏的电路. 该游戏在一个二维网格空间中进行,在该题目中是 16 * 16 的大小,每一个格子都有两种状态(0 或 1),代 ...
- 腾讯事务处理技术验证系统3TS-Coo模块的项目环境安装使用说明
本篇文章将详细说明3TS-Coo模板的安装和使用,帮助您快速上手项目 第一部分是简单的基础Docker相关概念,精炼的几句小白话快速理解即可: 第二部分是快速安装项目环境的安装文档,简单几行命令搞定, ...
- EXE一机一码打包加密大师(EXE加密, 一机一码, 添加授权,添加静态密码,支持设置试用时间)
EXE一机一码打包加密大师可以打包加密保护EXE文件,同时给EXE文件添加上一机一码认证,或者静态密码,不同的电脑打开加密后的文件需要输入不同的激活码才能正常使用,保护文件安全,方便向用户收费. 下载 ...
- Nginx map 实现时间格式转换
哈喽大家好,我是咸鱼 最近我们需要把 Nginx 的日志接入到自研的日志采集平台上,但是这个平台只支持 JSON 格式,所以需要把 Nginx 日志格式改成 JSON 格式 例如下面这样的效果 刚开始 ...
- Python脚本批量造数据、跑定时任务协助测试
批量造数据 连接Mysql的信息 1 import pymysql 2 # 数据库连接信息 3 # 多个库要有多个conn 4 conn = pymysql.connect( 5 host=" ...
- 「codeforces - 1394C」Boboniu and String
link. 注意到 BN-string 长成什么样根本不重要,我们把它表述为 BN-pair \((x, y)\) 即可,两个 BN-strings 相似的充要条件即两者分别映射得到的 BN-pair ...
- 「tricks」平凡二分幻术
其实这个的标题叫 平凡线段树上二分幻术,因为这是一个民科在乱叫. 如标题所言,这个东西确实非常 trivial.碍于网络上没有一个成体系的文章供参考就只能自己来炒炒冷饭. 如果出了什么 bug 就当个 ...