在linux裸机部署springBoot项目
一、项目创建及打包
创建项目,打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项目的更多相关文章
- linux上部署SpringBoot项目及遇到的问题
打开sftp步骤, 在显示的已连接的窗口上右键, 选择connect SFTP Session就可以打开文件上传的窗口 从windows上传文件到linux, 首先linux需要先切换到想要保存文件的 ...
- Linux下部署springboot项目的步骤及过程
最近在研究将springboot项目部署到Linux服务器上,由于springboot是内嵌了tomcat,所以可以直接将项目打包上传至服务器上.我是在idea上的项目,所以我就基于此说下过程. (一 ...
- linux上部署springboot项目
1.安装jdk,请参考个人博客linux安装jdk 2.安装mysql,请参考个人博客 linux安装mysql 3.项目打包(使用idea) 打开项目,点击idea右边Maven Projects菜 ...
- mac和linux下使用Docker,部署SpringBoot项目到docker
主要是看一下如何在linux及mac上安装docker,创建docker镜像,部署SpringBoot项目到docker,并借助于DaoCloud进行docker镜像下载加速等. 我用的电脑是mac, ...
- SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1
在之前的博文<详解intellij idea搭建SpringBoot>介绍了idea搭建SpringBoot的详细过程, 并在<CentOS安装Tomcat>中介绍了Tomca ...
- 利用Dockerfile部署SpringBoot项目
利用Dockerfile部署SpringBoot项目 1.创建一个SpringBooot项目并且打成jar包 2.在Linux中创建一个文件夹,来做docker测试 [root@izwz90lvzs7 ...
- Docker快速上手之部署SpringBoot项目
Docker是基于Go语言实现的云开源项目. Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,也就是通过对应用组件的封装.分发.部署.运行等生命周期 ...
- 部署SpringBoot项目jar包到云服务器
前言 做安卓开发也有三四年了,但是对网络这块什么http.tcp/ip之类的一直不理解.并且想自己做一些小项目练练手的时候,数据库直接存在apk里总不是滋味,所以这次站在安卓开发的角度尝试着做一做简单 ...
- linux下部署php项目-Apache、php、mysql关联
linux下部署php项目环境可以分为两种,一种使用Apache,php,mysql的压缩包安装,一种用yum命令进行安装. 使用三种软件的压缩包进行安装,需要手动配置三者之间的关系.apache和p ...
随机推荐
- conda虚拟环境安装
一.背景 需要学习mxnet,建一个conda虚拟软件环境. 二.步骤 1.下载anaconda安装文件:https://mirrors.tuna.tsinghua.edu.cn/anaconda/m ...
- Chisel3 - 接口方向(Direction)
https://mp.weixin.qq.com/s/36jreQGpDLCCNfmUwI34lA 模块接口有三种方向:Input/Output/Inout.Chisel在声明模块接口的时候,也需 ...
- 使用ADMT和PES实现window AD账户跨域迁移-介绍篇
使用 ADMT 和 pwdmig 实现 window AD 账户跨域迁移系列: 介绍篇 ADMT 安装 PES 的安装 ADMT:迁移组 ADMT:迁移用户 ADMT:计算机迁移 ADMT:报告生成 ...
- 从0开始探究vue-双向绑定原理
理解 vue是一个非常优秀的框架,其优秀的双向绑定原理,mvvm模型,组件,路由解析器等,非常的灵活方便,也使开发者能够着重于数据处理,让开发者更清晰的设计自己的业务. 双向绑定,就是数据变化的时候, ...
- Java实现 LeetCode 765 情侣牵手(并查集 || 暴力)
765. 情侣牵手 N 对情侣坐在连续排列的 2N 个座位上,想要牵到对方的手. 计算最少交换座位的次数,以便每对情侣可以并肩坐在一起. 一次交换可选择任意两人,让他们站起来交换座位. 人和座位用 0 ...
- Java实现 LeetCode 749 隔离病毒(DFS嵌套)
749. 隔离病毒 病毒扩散得很快,现在你的任务是尽可能地通过安装防火墙来隔离病毒. 假设世界由二维矩阵组成,0 表示该区域未感染病毒,而 1 表示该区域已感染病毒.可以在任意 2 个四方向相邻单元之 ...
- Java实现 LeetCode 629 K个逆序对数组(动态规划+数学)
629. K个逆序对数组 给出两个整数 n 和 k,找出所有包含从 1 到 n 的数字,且恰好拥有 k 个逆序对的不同的数组的个数. 逆序对的定义如下:对于数组的第i个和第 j个元素,如果满i < ...
- Java实现 蓝桥杯VIP 算法训练 链表数据求和操作
算法训练 9-7链表数据求和操作 时间限制:1.0s 内存限制:512.0MB 读入10个复数,建立对应链表,然后求所有复数的和. 样例输入 1 2 1 3 4 5 2 3 3 1 2 1 4 2 2 ...
- Java中Iterator 和ListIterator的区别
1.Iterator Iterator的定义如下: public interface Iterator {} Iterator是一个接口,它是集合的迭代器.集合可以通过Iterator去遍历集合中的元 ...
- 疫情期间我是如何拿到20k的offer,2020年php面试题汇总
推荐视频:面试10家公司,收获9个offer,2020年PHP 面试问题 第一阶段1-2年 我认为1-2年对于PHP程序员来说是第一个门槛,这一阶段菜鸟正式从理论迈向企业级开发.我们知道如何使用工具. ...