ubuntu22.04安装jenkins并配置

准备

更新系统

linux 复制代码
sudo apt update
sudo apt upgrade

环境准备

jdk

安装

linux 复制代码
sudo apt install openjdk-11-jdk

验证

linux 复制代码
java -version

git

ubuntu配置git

maven

ubuntu配置maven

部署

添加 Jenkins 存储库

导入Jenkins存储库的GPG密钥

复制代码
wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -

将Jenkins存储库添加到APT源列表中

复制代码
sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'

使APT获取最新的Jenkins软件包

复制代码
sudo apt update

补充

遇到错误

复制代码
E: The repository 'http://pkg.jenkins.io/debian-stable binary/ Release' is not signed.

或者

复制代码
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 3B4FE6ACC0B21F32

导入密钥

复制代码
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5BA31D57EF5975CA

更新apt-get的存储库

复制代码
sudo apt-get -y update

更新一下apt-get本身的版本

复制代码
sudo apt-get -y upgrade

重新update

复制代码
sudo apt-get -y update

安装 Jenkins

复制代码
sudo apt install jenkins

初始化

访问

复制代码
http://ip:8080

管理员密码

复制代码
sudo cat /var/lib/jenkins/secrets/initialAdminPassword

启动和停止 Jenkins 服务

启动 Jenkins 服务:

复制代码
sudo systemctl start jenkins

停止 Jenkins 服务:

复制代码
sudo systemctl stop  jenkins

重启Jenkins 服务:

复制代码
sudo systemctl restart  jenkins

配置

初始化插件

首次或不能确定,安装推荐

语言中文

Manage Jenkins -> Plugins -> Available plugins -> 输入【Locale】选中安装

系统管理 -> 系统配置->locale 输入zh_CN,并勾选选项,点击保存

用户角色配置

安装插件

系统管理 -> 插件管理 -> Available plugins -> Role-based Authorization Strategy

配置插件

系统管理 -> 全局安全配置 -> 授权策略 -> Role-Based Strategy 保存

管理和分配角色

系统管理->Manage and Assign Roles

  • 管理角色 : Manage Roles
  • 分配角色 : Assign Roles

配置maven

系统管理 -> 全局工具配置 -> 新增maven(取消勾选自动安装,可以配置本地) -> 保存

maven构建工具安装

系统管理 -> 插件管理 -> Available plugins -> Maven Integration

远程

安装Publish Over SSH插件

配置远程服务器

系统管理 -> 系统配置 -》 Publish over SSH -> SSH Servers(remote Directory 填写/ 即远程路径)

测试连接

使用

git 构建项目使用

首页->新建任务

输入名称->点击[构建一个maven项目] -> 确定

填写描述

配置git地址

配置仓库访问

编译成功

远程部署

配置调整


复制代码
#!/bin/bash
export BUILD_ID=hellow

WORKSPACE=/data/hello
JDK_PATH=/app/jdk/jdk1.8.0_381
JAR_NAME=hellow-0.0.1-SNAPSHOT.jar

PID=`ps -ef | grep ${JAR_NAME} | grep -v grep | grep -v startup | awk '{print \$2}'`
echo $PID;
if [ ! "$PID" ] ;then
     echo "进程不存在"
else
    echo "进程存在,杀死进程PID$PID"
    kill -9 $PID
fi

echo "服务启动开始"
nohup ${JDK_PATH} -jar ${WORKSPACE}/${JAR_NAME} &

sh 运行未配通

相关推荐
强里秋千墙外道2 小时前
【Linux】ssh升级到最新版本-以ubuntu为例
linux·运维·ssh
先做个垃圾出来………2 小时前
Docker容器部署方法
运维·docker·容器
minhuan2 小时前
构建AI智能体:七十五、用扣子平台创建工作流:从自动化到智能化的进阶之路
运维·自动化·工作流构建·意图识别工作流
老实巴交的麻匪2 小时前
(八)学习、实践、理解 CI/CD 与 DevOps:持续集成 CI,从源代码到容器镜像
运维·云原生·自动化运维
ink@re3 小时前
Linux iptables:四表五链 + 实用配置
linux·运维·服务器
努力努力再努力wz3 小时前
【Linux进阶系列】:信号(下)
java·linux·运维·服务器·开发语言·数据结构·c++
☆璇4 小时前
【Linux】传输层协议UDP
linux·运维·udp
终焉代码4 小时前
【Linux】进程初阶(1)——基本进程理解
linux·运维·服务器·c++·学习·1024程序员节
Dreamboat-L5 小时前
从零开始在云服务器上部署Gitlab
运维·服务器·gitlab
wanhengidc8 小时前
云手机在网络游戏中的主要功能
运维·服务器·游戏·智能手机