Jar方式(自带Tomcat)
打包成 jar 的方式就不用安装 Tomcat,一个命令 java -jar stusys.jar 就可以启动项目。
设置Jar格式
打包项目
上传到云服务器
启动项目
进入项目所在目录,执行java -jar stusys.jar
就可以启动项目,但是这是一次性的,如果关闭远程连接,项目也就随之关闭。
所以我们需要一直后台运行,命令是 nohup java -jar stusys.jar >temp.txt &
扩展:nohup 不挂断地运行
>temp.txt 将命令行中输出的内容,写入到 temp.text 中
& 自动运行
启动成功,
测试
浏览器输入“ 云服务器的公网ip : 项目的端口号/地址 ”例如我的是 121.89.173.87:8088/login.html
- 注意项目设置的端口号不要跟服务器其他进程冲突。出现端口占用问题。
- 同时服务器端口安全组也要开发哦
扩展
Linux下查看端口进程:netstat -nlp |grep :8088
杀掉此进程:kill 29051
kill -9 `netstat -nlp | grep :8082 | awk '{print $7}' | awk -F"/" '{ print $1 }'`
1.查看端口
终端输入:lsof -i tcp:port 将port换成被占用的端口(如:80)
将会出现占用端口的进程信息。
2.kill进程
找到进程的PID,使用kill命令:kill PID(进程的PID,如2044),杀死对应的进程
War方式(需移除本地项目的Tomcat)
docker部署项目
一键重启的Shell脚本
#!/bin/bash
# 作者 后青春期的Keats
# 博客地址 https://www.cnblogs.com/keatsCoder/
# 默认应用名称
defaultAppName='redis-cli.jar'
appName=''
if [ $1 && $1!=0 ]
then
appName=$1
else
appName=$defaultAppName
fi
echo ">>>>>>本次重启的应用: $appName <<<<<<"
# 关闭应用方法
stopApp(){
pid=$( ps -ef |grep $appName |grep 'java -jar'|grep -v grep|awk '{print $2}')
kill -9 $pid
}
# 启动应用方法
startApp(){
nohup java -jar $appName &
}
# 滚动打印日志
printLog(){
tail -1000f nohup.out
}
if [ $2 ]
then
echo '第二个参数有值,仅启动'
else
stopApp
fi
startApp
printLog