一、项目创建及打包

  创建项目,打jar包

二、安装JDK

  1、在/usr目录下床架java文件夹,将

  2、下载jdk8,并上传linux服务器(/usr/java)

    下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

  3、解压

sudo vim /etc/profile

  4、配置环境变量

sudo vi /etc/profile

  添加如下变量信息

export JAVA_HOME=/usr/java/jdk1..0_251
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:{JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}

  5、重新加载配置文件

source /etc/profile

  6、查看安装情况

java -version

  看到如下输出,即为成功:

java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) -Bit Server VM (build 25.251-b08, mixed mode)

三、安装Maven

  1、下载Maven:http://maven.apache.org/download.cgi

  2、在/usr文件夹下创建maven文件夹,并将下载的maven文件放在该文件夹内

sudo mkdir /usr/maven
sudo mv apache-maven-3.6.-bin.tar.gz /usr/maven/

  3、解压

sudo tar -zxvf apache-maven-3.6.-bin.tar.gz

  4、设置环境变量

sudo vi /etc/profile

  设置如下环境变量

export MAVEN_HOME=/usr/maven/apache-maven-3.6.
export PATH=$MAVEN_HOME/bin:$PATH

  5、刷新配置文件

source /etc/profile

  6、验证安装

mvn -v

  出现以下输出,即为安装成功

Apache Maven 3.6. (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /usr/maven/apache-maven-3.6.
Java version: 1.8.0_251, vendor: Oracle Corporation, runtime: /usr/java/jdk1..0_251/jre
Default locale: en_US, platform encoding: UTF-
OS name: "linux", version: "3.10.0-693.el7.x86_64", arch: "amd64", family: "unix"

  7、修改maven配置

vi /usr/maven/apache-maven-3.6./conf/settings.xml

  可以添加maven仓库及用户名密码等内容

四、项目运行

nohup java -jar /usr/project/ins-group-buying-channel-jsf-service-1.0.-SNAPSHOT.jar

五、修改host

如果是测试环境,需要配置相关host

sudo vi /etc/host

然后添加相应的host配置即可

六、添加shell脚本

#!/bin/bash
#这里可替换为你自己的执行程序,其他代码无需更改
APP_NAME=/usr/project/jar/ins-group-buying-channel-jsf-service-1.0.-SNAPSHOT.jar
LOG_PATH=/usr/project/log #使用说明,用来提示输入参数
usage() {
echo "Usage: sh 脚本名.sh [startTest|startPrePreod|startProduction|stop|restart|status]"
exit
} #检查程序是否在运行
is_exist(){
pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' `
#如果不存在返回1,存在返回0
if [ -z "${pid}" ]; then
return
else
return
fi
} #测试环境启动方法
startTest(){
profile="test"
start $profile
} #预发环境启动方法
startPreProd(){
profile="pre-prod"
start $profile
} #生产环境启动方法
startProduction(){
profile="production"
start $profile
} #启动方法
start(){
is_exist
if [ $? -eq "" ]; then
echo "${APP_NAME} is already running. pid=${pid} ."
else
nohup java -jar $APP_NAME --spring.profiles.active=$ & # > $LOG-PATH/log.file >& &
echo "${APP_NAME} start success"
fi
} #停止方法
stop(){
is_exist
if [ $? -eq "" ]; then
kill - $pid
else
echo "${APP_NAME} is not running"
fi
} #输出运行状态
status(){
is_exist
if [ $? -eq "" ]; then
echo "${APP_NAME} is running. Pid is ${pid}"
else
echo "${APP_NAME} is NOT running."
fi
} #重启
restart(){
stop
start
} #根据输入参数,选择执行对应方法,不输入则执行使用说明
case "$1" in
"starttest")
startTest
;;
"startpre")
startPreProd
;;
"startprod")
startProduction
;;
"stop")
stop
;;
"status")
status
;;
"restart")
restart
;;
*)
usage
;;
esac

在linux裸机部署springBoot项目的更多相关文章

  1. linux上部署SpringBoot项目及遇到的问题

    打开sftp步骤, 在显示的已连接的窗口上右键, 选择connect SFTP Session就可以打开文件上传的窗口 从windows上传文件到linux, 首先linux需要先切换到想要保存文件的 ...

  2. Linux下部署springboot项目的步骤及过程

    最近在研究将springboot项目部署到Linux服务器上,由于springboot是内嵌了tomcat,所以可以直接将项目打包上传至服务器上.我是在idea上的项目,所以我就基于此说下过程. (一 ...

  3. linux上部署springboot项目

    1.安装jdk,请参考个人博客linux安装jdk 2.安装mysql,请参考个人博客 linux安装mysql 3.项目打包(使用idea) 打开项目,点击idea右边Maven Projects菜 ...

  4. mac和linux下使用Docker,部署SpringBoot项目到docker

    主要是看一下如何在linux及mac上安装docker,创建docker镜像,部署SpringBoot项目到docker,并借助于DaoCloud进行docker镜像下载加速等. 我用的电脑是mac, ...

  5. SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1

    在之前的博文<详解intellij idea搭建SpringBoot>介绍了idea搭建SpringBoot的详细过程, 并在<CentOS安装Tomcat>中介绍了Tomca ...

  6. 利用Dockerfile部署SpringBoot项目

    利用Dockerfile部署SpringBoot项目 1.创建一个SpringBooot项目并且打成jar包 2.在Linux中创建一个文件夹,来做docker测试 [root@izwz90lvzs7 ...

  7. Docker快速上手之部署SpringBoot项目

    Docker是基于Go语言实现的云开源项目. Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,也就是通过对应用组件的封装.分发.部署.运行等生命周期 ...

  8. 部署SpringBoot项目jar包到云服务器

    前言 做安卓开发也有三四年了,但是对网络这块什么http.tcp/ip之类的一直不理解.并且想自己做一些小项目练练手的时候,数据库直接存在apk里总不是滋味,所以这次站在安卓开发的角度尝试着做一做简单 ...

  9. linux下部署php项目-Apache、php、mysql关联

    linux下部署php项目环境可以分为两种,一种使用Apache,php,mysql的压缩包安装,一种用yum命令进行安装. 使用三种软件的压缩包进行安装,需要手动配置三者之间的关系.apache和p ...

随机推荐

  1. conda虚拟环境安装

    一.背景 需要学习mxnet,建一个conda虚拟软件环境. 二.步骤 1.下载anaconda安装文件:https://mirrors.tuna.tsinghua.edu.cn/anaconda/m ...

  2. Chisel3 - 接口方向(Direction)

    https://mp.weixin.qq.com/s/36jreQGpDLCCNfmUwI34lA   模块接口有三种方向:Input/Output/Inout.Chisel在声明模块接口的时候,也需 ...

  3. 使用ADMT和PES实现window AD账户跨域迁移-介绍篇

    使用 ADMT 和 pwdmig 实现 window AD 账户跨域迁移系列: 介绍篇 ADMT 安装 PES 的安装 ADMT:迁移组 ADMT:迁移用户 ADMT:计算机迁移 ADMT:报告生成 ...

  4. 从0开始探究vue-双向绑定原理

    理解 vue是一个非常优秀的框架,其优秀的双向绑定原理,mvvm模型,组件,路由解析器等,非常的灵活方便,也使开发者能够着重于数据处理,让开发者更清晰的设计自己的业务. 双向绑定,就是数据变化的时候, ...

  5. Java实现 LeetCode 765 情侣牵手(并查集 || 暴力)

    765. 情侣牵手 N 对情侣坐在连续排列的 2N 个座位上,想要牵到对方的手. 计算最少交换座位的次数,以便每对情侣可以并肩坐在一起. 一次交换可选择任意两人,让他们站起来交换座位. 人和座位用 0 ...

  6. Java实现 LeetCode 749 隔离病毒(DFS嵌套)

    749. 隔离病毒 病毒扩散得很快,现在你的任务是尽可能地通过安装防火墙来隔离病毒. 假设世界由二维矩阵组成,0 表示该区域未感染病毒,而 1 表示该区域已感染病毒.可以在任意 2 个四方向相邻单元之 ...

  7. Java实现 LeetCode 629 K个逆序对数组(动态规划+数学)

    629. K个逆序对数组 给出两个整数 n 和 k,找出所有包含从 1 到 n 的数字,且恰好拥有 k 个逆序对的不同的数组的个数. 逆序对的定义如下:对于数组的第i个和第 j个元素,如果满i < ...

  8. Java实现 蓝桥杯VIP 算法训练 链表数据求和操作

    算法训练 9-7链表数据求和操作 时间限制:1.0s 内存限制:512.0MB 读入10个复数,建立对应链表,然后求所有复数的和. 样例输入 1 2 1 3 4 5 2 3 3 1 2 1 4 2 2 ...

  9. Java中Iterator 和ListIterator的区别

    1.Iterator Iterator的定义如下: public interface Iterator {} Iterator是一个接口,它是集合的迭代器.集合可以通过Iterator去遍历集合中的元 ...

  10. 疫情期间我是如何拿到20k的offer,2020年php面试题汇总

    推荐视频:面试10家公司,收获9个offer,2020年PHP 面试问题 第一阶段1-2年 我认为1-2年对于PHP程序员来说是第一个门槛,这一阶段菜鸟正式从理论迈向企业级开发.我们知道如何使用工具. ...