Java:通过Shell脚本控制SpringBoot项目的重新部署

简介: Java:通过Shell脚本控制SpringBoot项目的重新部署

以部署 demo-0.0.1-SNAPSHOT.jar 项目为例

通过两个脚本可以实现对java服务的重新部署

service.sh # 位于服务器上,控制服务启动、停止、重启
deploy.sh  # 位于开发环境中,打包、更新服务器代码并重启

service.sh

#!/bin/bash
# 启动命令
function start(){
    echo "start..."
    nohup java -jar demo-0.0.1-SNAPSHOT.jar >> nohup.out 2>&1 &
    echo "start successful"
    return 0
}
# 停止命令
function stop(){
    echo "stop..."
    ps -ef|grep demo-0.0.1-SNAPSHOT.jar|grep -v grep|awk '{print "kill -9 "$2}'|sh
    echo "stop successful"
    return 0
}
case $1 in
"start")
    start
    ;;
"stop")
    stop
    ;;
"restart")
    stop && start
    ;;
*)
    echo "请输入: start, stop, restart"
    ;;
esac

deploy.sh

#!/bin/bash
# 打包
mvn package && \
# 上传
scp target/demo-0.0.1-SNAPSHOT.jar root@<远程ip>:/www/www.demo.com && \
# 远程重启
ssh root@<远程ip> "cd /www/www.demo.com; bash service.sh restart"

使用方式

服务器上使用

# 启动
bash service.sh start
# 关闭
bash service.sh stop
# 重启
bash service.sh start

本地开发环境中使用

#  重新部署
bash deploy.sh
相关文章
|
11月前
|
机器学习/深度学习 人工智能 监控
Java与AI模型部署:构建企业级模型服务与生命周期管理平台
随着企业AI模型数量的快速增长,模型部署与生命周期管理成为确保AI应用稳定运行的关键。本文深入探讨如何使用Java生态构建一个企业级的模型服务平台,实现模型的版本控制、A/B测试、灰度发布、监控与回滚。通过集成Spring Boot、Kubernetes、MLflow和监控工具,我们将展示如何构建一个高可用、可扩展的模型服务架构,为大规模AI应用提供坚实的运维基础。
742 0
存储 jenkins 持续交付
1124 2
|
Java 测试技术 Spring
简单学Spring Boot | 博客项目的测试
本内容介绍了基于Spring Boot的博客项目测试实践,重点在于通过测试驱动开发(TDD)优化服务层代码,提升代码质量和功能可靠性。案例详细展示了如何为PostService类编写测试用例、运行测试并根据反馈优化功能代码,包括两次优化过程。通过TDD流程,确保每项功能经过严格验证,增强代码可维护性与系统稳定性。
485 0
|
存储 Java 数据库连接
简单学Spring Boot | 博客项目的三层架构重构
本案例通过采用三层架构(数据访问层、业务逻辑层、表现层)重构项目,解决了集中式开发导致的代码臃肿问题。各层职责清晰,结合依赖注入实现解耦,提升了系统的可维护性、可测试性和可扩展性,为后续接入真实数据库奠定基础。
931 0
|
安全 JavaScript Java
java Web 项目完整案例实操指南包含从搭建到部署的详细步骤及热门长尾关键词解析的实操指南
本项目为一个完整的JavaWeb应用案例,采用Spring Boot 3、Vue 3、MySQL、Redis等最新技术栈,涵盖前后端分离架构设计、RESTful API开发、JWT安全认证、Docker容器化部署等内容,适合掌握企业级Web项目全流程开发与部署。
1158 0
|
JSON 分布式计算 大数据
springboot项目集成大数据第三方dolphinscheduler调度器
springboot项目集成大数据第三方dolphinscheduler调度器
870 3
|
Java 关系型数据库 数据库连接
Spring Boot项目集成MyBatis Plus操作PostgreSQL全解析
集成 Spring Boot、PostgreSQL 和 MyBatis Plus 的步骤与 MyBatis 类似,只不过在 MyBatis Plus 中提供了更多的便利功能,如自动生成 SQL、分页查询、Wrapper 查询等。
1168 2
|
分布式计算 大数据 Java
springboot项目集成大数据第三方dolphinscheduler调度器 执行/停止任务
springboot项目集成大数据第三方dolphinscheduler调度器 执行/停止任务
375 0
|
Java 关系型数据库 MySQL
springboot项目集成dolphinscheduler调度器 实现datax数据同步任务
springboot项目集成dolphinscheduler调度器 实现datax数据同步任务
1164 2
|
分布式计算 Java 大数据
springboot项目集成dolphinscheduler调度器 可拖拽spark任务管理
springboot项目集成dolphinscheduler调度器 可拖拽spark任务管理
652 2