Linux部署JPom代替Jenkins构建和推送镜像并发布

实现内网环境Linux部署JPom代替Jenkins构建和推送镜像并发布

1. 准备一个干净的Linux(CentOS、Ubantu)系统(如果自己能预装docker、java、maven、node最好)

这次JPom的部署我们就直接使用Linux安装而非Docker安装 考虑到有的项目环境是纯内网环境

1.1 安装 java maven node

官网的安装文档 https://jpom.top/pages/db3065/

一般公司都需要指定具体的版本 比如我们现在java用的就是 corretto-11 node用的是14.17.1 所以我直接修改了install.sh 指定了使用(可以替换成自己的)

  • linux-corretto-jdk-11.tar.gz
  • linux-maven-3.9.6-nexus.tar.gz
  • linux-node-14.17.1-x64.tar.gz

使用bash install.sh 执行

#!/bin/bash

command_exists() {
	command -v "$@" >/dev/null 2>&1
}

function checkCommand() {
	command=$(which "$1")
	if [[ ! -x "$command" ]]; then
		if command_exists "$1"; then
			echo "$1"
		else
			echo "not found"
		fi
	else
		echo "$command"
	fi
}

function mustMkdir() {
	dir="$1"
	mkdir -p "$dir"
	if [ ! -d "$dir" ]; then
		echo "ERROR: 目录创建失败: $dir"
		
	fi
	echo "$dir"
}

function findProfile() {
	user="$(id -un 2>/dev/null || true)"
	profileName=""
	if [ "$user" != 'root' ]; then
		array=("$HOME/.bash_profile" "$HOME/.bashrc" "$HOME/.bash_login")
		for element in "${array[@]}"; do
			if [ -f "$element" ]; then
				profileName=$element
				break
			fi
		done
		if [ -z "$profileName" ]; then
			cat >&2 <<-EOF
				ERROR: 没有找到可用的环境变量文件
			EOF
			exit 1
		fi
	else
		profileName="/etc/profile"
	fi
	echo "$profileName"
}

# 安装 jdk
function installJdkFn() {
	javaCommand=$(checkCommand java)
	if [[ "$javaCommand" == "not found" ]]; then
		echo "不存在 java 环境,开始尝试安装"
		useDir=$(mustMkdir /usr/java)
		userProfileName=$(findProfile)
		if grep -q "CLASSPATH" "$userProfileName"; then
			echo 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值