在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 ...
随机推荐
- Mybatis 的动态SQL,批量增删查改
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 批量增删改的接口: public interface BookService { //批量增加 int ...
- Java实现 LeetCode 692 前K个高频单词(map的应用)
692. 前K个高频单词 给一非空的单词列表,返回前 k 个出现次数最多的单词. 返回的答案应该按单词出现频率由高到低排序.如果不同的单词有相同出现频率,按字母顺序排序. 示例 1: 输入: [&qu ...
- Java实现 LeetCode 643 子数组最大平均数 I(滑动窗口)
643. 子数组最大平均数 I 给定 n 个整数,找出平均数最大且长度为 k 的连续子数组,并输出该最大平均数. 示例 1: 输入: [1,12,-5,-6,50,3], k = 4 输出: 12.7 ...
- Java实现 LeetCode 452 用最少数量的箭引爆气球
452. 用最少数量的箭引爆气球 在二维空间中有许多球形的气球.对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标.由于它是水平的,所以y坐标并不重要,因此只要知道开始和结束的x坐标就足够 ...
- CSS清除浮动&内容居中&文字溢出
学习! 1.CSS清除浮动的方法 (1)添加标签清除浮动: 在浮动元素结尾处,并列的添加标签<div style="clear:both;"></div>. ...
- Scrapy 小技巧(一):使用 scrapy 自带的函数(follow & follow_all)优雅的生成下一个请求
前言 如何优雅的获取同一个网站上下一次爬取的链接并放到生成一个 Scrapy Response 呢? 样例 from urllib import parse import scrapy class S ...
- C#基础篇——泛型
前言 在开发编程中,我们经常会遇到功能非常相似的功能模块,只是他们的处理的数据不一样,所以我们会分别采用多个方法来处理不同的数据类型.但是这个时候,我们就会想一个问题,有没有办法实现利用同一个方法来传 ...
- Hbase的基本架构以及对应的读写流程
一.HBase简介 1,定义: HBase 是一种分布式.可扩展.支持海量数据存储的 NoSQL 数据库. 2,HBase的架构图: 架构角色: 1)Master Master是所有Region Se ...
- PCB制图--VCC、VDD、VEE、VSS、VDDA、VSSA
VDDA为所有的模拟电路部分供电,包括: ADC模块,复位电路,PVD(可编程电压监测器),PLL,上电复位(POR)和掉电复位(PDR)模块,控制VBAT切换的开关等.即使不 使用ADC功能,也需要 ...
- 关于Java优质代码的那些事
以前别人告诉我,代码都是粘贴复制,然后写多了,就有了自己的思想,然后1,2年过去了,我的代码质量并没有什么提高,问了一些博客园里的前辈,前辈们都是语重心长的说:"少年,多看书呀!" ...