部署并启动项目在linux(CentOS7)上,一名合格的程序猿不能不会(ಥ_ಥ)

news2024/11/18 11:32:37

各位小伙伴大家好呀哈哈哈~
遇到问题不要慌─=≡Σ(((つ•̀ω•́)つ让我先发个朋友圈~( • ̀ω•́ )✧
我们知道项目的正常运行是需要先部署在服务器上,然后才能正常使用,我们一般都是在idea下写好然后直接部署在tomcat上或者其他服务器,但是这也只是在windows系统下运行部署这个项目,真正在企业,部署在linux上是更多的,今天我就用一个springboot的demo来说下咋部署在linux上~(ಥ_ಥ)

1.部署前提

首先我们在windows下部署需要mysql、jdk、maven这些吧,怎么安装mysql、jdk到linux我这里就不讲咯(ಥ_ಥ) ,但是要注意的一点是,你安装的jdk版本要不低于你打包项目所用的jdk版本,其次我用的安全终端模拟软件是FinalShell,各位老爷用别的也可以,像xshell什么的
在这里插入图片描述
我这里是装好了的哦,没装的,记得装好再部署~
然后我这里用的操作系统是centos7

2.项目上传到linux

我们在上传前首先想好我们打包好后的jar包上传到哪?毫无疑问上传到linux
安装包我们保存在/usr/local/自定义目录

1.我们创建一个目录来存放jar包,我这里创建的是名字为app的目录
在这里插入图片描述
在这里插入图片描述

2.项目jar包上传到app目录下
先进入app目录下
在这里插入图片描述
进入app目录之后,我们在finalshell下方会看到app这个目录,右键会出现上传选项,点击上传,选择你的项目jar包
在这里插入图片描述
我这里上传的我的一个springboot项目jar包,选中jar包然后点击确定就上传好啦~
在这里插入图片描述
在这里插入图片描述
另一个jar包不用管,是我的另一个项目(ಥ_ಥ)

3.创建linux下对应的数据库表

在运行之前首先你要保证你的linux数据库有你在windows下运行项目时所需要的数据库,如果没有要先导入到linux数据库,怎么生成sql脚本以及怎么导入我简单说下吧(o°ω°o)
1.首先找到你这个项目需要的数据库,然后按图操作
在这里插入图片描述
2.然后运行脚本命令
据我自己尝试,直接运行这个脚本是不行的,我自己是先在linux的数据库下创建好mybatisplus_db这个库,然后运行脚本里的部分指令
在这里插入图片描述
圈中的部分一直复制到结尾,在navicat下运行这部分命令
在这里插入图片描述
运行完后就可以啦

4.运行jar包,启动项目

启动项目有两种方式,而第二种是最常用的方式

1.直接启动,和windows下黑窗口启动一样的指令

命令:java -jar springboot_ssmp-0.0.1-SNAPSHOT.jar(这里是你自己项目的jar包名)
在这里插入图片描述
这样就启动好啦,是不是很简单呀(〃‘▽’〃)但是我们肯定发现,这种启动方式出现了一种问题,就是霸屏了(•́へ•́╬),我们没办法再进行别的操作了,这就很不爽,我们希望的是把项目放在linux后台去运行,这样我们就可以进行其他的操作了,于是乎,我们ctrl + c关闭当前窗口运行的项目,去尝试另一种方式哈哈哈~

2.通过nuhup指令将项目放在后台运行

命令:nohup java -jar springboot_ssmp-0.0.1-SNAPSHOT.jar > server.log 2>&1 &
在这里插入图片描述
**对于> server.log 2>&1 &我们不需要深入了解,**参考这篇文章(点我来击剑ಥ_ಥ) 这里server.log是日志文件,名称我们可以随便起,我这里是叫server,你也可以叫ikun,没毛病( ̄3 ̄)a
日志最终生成在jar包所在目录下
在这里插入图片描述
这样我们就启动好啦哈哈哈
查看一下当前运行的java项目
命令:ps -ef|grep “java -jar”
在这里插入图片描述
很好,佛祖保佑,没有出错ヾ(✿゚▽゚)ノ
那么问题来了!
咋把项目停下来?我们知道ctrl + c是清理当前窗口运行的进程,你这项目都跑后台了,当然你再ctrl + c也没有哈哈哈~
有办法吗?帅气的我肯定可以的!
我们可以联想到windows下杀死进程的方式,通过命令杀死,我们上面都ps -ef|grep "java -jar"查到了这个进程的pid,那么我们就可以通过pid来结束项目!
在这里插入图片描述
再在windows浏览器访问发现:
在这里插入图片描述
不错不错,天才如我呀┗( ▔, ▔ )┛

5.总结

总的来说启动关闭项目就三条命令
后台运行: nohup java -jar springboot_ssmp-0.0.1-SNAPSHOT.jar > server.log 2>&1 &
找到进程pid: ps -ef|grep “java -jar”
杀死进程: kill -9 pid -9表示强制杀死
好了,感谢各位老爷观看,献丑献丑,我们后会有期✧(^_-✿

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/111251.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

多维表需求管理表自动生成TAPD需求

【实现效果:】业务同学使用多维表管理客户需求,和产品团队经过评审之后,一键把多维表里对应的需求生成TAPD需求/缺陷单 【准备工作】 准备一个多维表,比如维格表、金山轻维表等 可以参考这两个模版: 金山轻维表&am…

【深入浅出Spring原理及实战】「开发实战系列」Aspectj和LoadTimeWeaving的动态代理技术实现指南

前提介绍 当我们聊到Spring框架的项目实际开发中,用的强大的功能之一就是(面向切面编程)的这门AOP技术。如果使用得当,它的最大的作用就是侵入性比较少并且简化我们的工作任务(节省大量的重复性编码)&…

【QT】PySide6 数据可视化折线图

一、项目介绍 本项目将通过PySide6构建一个可以显示数据折线图的可视化程序,其中,数据来源时美国地质调查局(US Geological Survey)上公开的一小时地震震级数据。 可以通过链接进行下载。 二、实现步骤 本项目的实现步骤可以概括为: 读取…

艾美捷过氧化氢酶检测试剂盒的功能和应用

过氧化氢酶(EC 1.11.1.6;2H2O2氧化还原酶)是一种普遍存在于大多数需氧细胞中的抗氧化酶。过氧化氢酶(CAT)参与过氧化氢(H2O2)的解毒,过氧化氢是一种活性氧(ROS&#xff0…

领域首创!合合信息与上海大学联合开启贵州原生态古彝文典籍数字化项目

古彝文传承至今已有数千年历史,是世界上最古老的文字之一。2022年12月21日,合合信息与上海大学社会学院正式签署校企合作协议,双方将合力完成以国家珍贵古籍《西南彝志》为中心的贵州古彝文图像识别及数字化校对项目(简称“古彝文…

搜索与图论---最短路

最短路:建图! 源点—起点汇点—终点约定n为点数,m为边数1单源最短路:求一个点到其他所有点的最短路 1.1所有边权都是正数 (1)朴素的Dijkstra算法(On^2) 例题:Dijkstra求最短路 I 代码: #include<iostream> #include<cstring> #

代码随想录算法训练营第42天 | 01背包问题 416. 分割等和子集

01背包问题 由于leetcode上没原题&#xff0c;故参考卡哥意见自己编题记录一下。 一、题干 背包最大重量为4。物品为&#xff1a; 物品名称重量价值011513202430––– 问背包能背的物品最大价值是多少&#xff1f; 二、解法 二维dp&#xff1a; 递推公式&#xff1a;dp[i…

数组方法中会更改原数组,不会更改原数组(详细)

1.不会改变原来数组的有&#xff1a; concat() 连接两个或更多的数组&#xff0c;并返回结果。 如果arr.concat&#xff08;&#xff09;里面不放数组参数&#xff0c;则会浅拷贝arr 如果参数不是数组&#xff0c;它不会递归到嵌套数组参数中 数据类型如字符串&#xff0c;数…

elasticsearch小白入门

一般再项目中都会用到 搜索&#xff0c;如果直接查询数据库&#xff0c;性能会存在瓶颈。 这时&#xff0c;用ES就很好的解决这个问题。 ES组件很多&#xff1a;包括 elasticsearch kibana beats logstash 安装 elasticsearch 下载&#xff1a; Elasticsearch 7.10.2 | El…

SpringBoot项目搭建+登录功能实现(小结)

项目目录 登录功能实现思路 目录 1.pom.xml添加依赖 2.配置application.yml文件 3.sql映射文件配置---UserMapper.xml 4.导入页面资源 5.Springboot启动类的配置 6.编写全局配置类 config->AppConfig 7.创建实体类--数据表对应 8.修改login.html页面 9.编写UserCo…

基于SpringBoot的SSMP整合案例

基于SpringBoot的SSMP整合案例 简介&#xff1a;SSMP(SpringSpringMVCMyBatis)&#xff0c;通过SpringBoot整合SSMP来完成增删改查案例。 功能开发模块 实体类开发————使用Lombok快速制作实体类Dao开发————整合MyBatisPlus&#xff0c;制作数据层测试Service开发——…

如意如意猿如意

如意如意猿如意什么是猿如意猿如意效率工具JSON编辑器jsontojava开发工具ChatGPT推荐指数评分及改进意见UI界面效率工具和开发工具ChatGPT一行代码总结经常听到一句话&#xff1a;如意如意随我心意&#xff0c;作为程序猿&#xff0c;我也想要一个如意&#xff0c;心中默念咒语…

LeetCode-91-解码方法

1、动态规划法 我们可以使用动态规划法来解决本问题。我们利用数组dp[i]dp[i]dp[i]来记录字符串前iii位能够组成的解码方法总数。在设计状态转移方程时&#xff0c;我们需要注意这样子的特殊情况&#xff1a;1、当s[i]s[i]s[i]不为0时&#xff0c;单独一个s[i]s[i]s[i]肯定能够…

PID算法总结-从公式原理到参数整定解析

目录 一、控制系统 1.1控制系统的分类 1.2 性能指标 二、PID算法的起源及特点 三、PID应用 四、PID公式原理 五、PID源码 六、PID整定方法 6.1 经验法 6.2 衰减曲线法 6.3 响应曲线法 参考文献&#xff1a; 一、控制系统 1.1控制系统的分类 分为开环控制、闭环控制和复…

Axios(二)

1.axios的基本使用 <!doctype html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, user-scalableno, initial-scale1.0, maximum-scale1.0, minimum-scale1.…

前端基础_像素的处理

像素的处理 在HTML5中使用canvas API所能够做到的图像处理技术中&#xff0c;还有一个更让人惊讶的技术就是像素处理技术。使用canvas API能够获取图像中的每一个像素&#xff0c;然后得到该像素颜色的rgb值或rgba值。 使用图形上下文对象的getImageData方法来获取图像中的像…

Docker安装Nginx 反向代理服务器

前端代码扔在服务器上怎么运行&#xff0c;首先安装Nginx&#xff0c;这里我用Docker安装Nginx 文章目录一、安装nginx docker镜像1、 获取nginx官方镜像2、查看镜像库3、宿主机创建好要挂载的目录4、启动一个不挂载的容器5、配置文件挂载到宿主机6、停止/删除容器7、查看宿主机…

Kaggle手写识别-卷积神经网络Top6%-代码详解

目录 1. Introduction 简介 2. Data preparation 数据准备 2.1 Load data 加载数据 2.2 Check for null and missing values 检查空值和缺失值 2.3 Normalization 规范化 2.4 Reshape 重塑 2.5 Label encoding 标签编码 2.6 Split training and valdiation set 拆分训…

阳康,但没恢复...

这几天真的是被新冠教育了… 我是上周五就开始有症状了&#xff0c;刚开始因为看了太多小感冒、没流感厉害、几天就康复的言论&#xff0c;我以为应该很快就能好&#xff0c;再加上全过程一直没发烧还暗自窃喜&#xff1a;这玩意不过如此嘛。 没想到病毒很快教我重新做人了&a…

代码随想录训练营第15天

题目&#xff1a;二叉树的最大深度 递归法&#xff1a;后序遍历。具体思想&#xff0c; 终止条件是如果指针指向了空&#xff08;也就是此时是叶子结点&#xff09;&#xff0c;那么返回0。然后根据左右中的递归顺序去调用函数&#xff08;并且保存这次的左右子树的深度&#…