跨境派

跨境派

跨境派,专注跨境行业新闻资讯、跨境电商知识分享!

当前位置:首页 > 卖家故事 > 一文带你快速了解如何在Linux上部署项目

一文带你快速了解如何在Linux上部署项目

时间:2024-04-08 17:55:28 来源:网络cs 作者:亙句 栏目:卖家故事 阅读:

标签: 项目  部署 
阅读本书更多章节>>>>

文章目录

前言发现宝藏一、手工部署项目1.在IDEA中开发SpringBoot项目并打成jar包2. 将jar包上传到Linux服务器3. 输入指令启动SpringBoot程序4. 检查防火墙,确保80端口(项目端口)对外开放,访问SpringBoot项目5. 在windows访问项目6. 改为后台运行SpringBoot程序,并将日志输出到日志文件7. 停止SpringBoot程序(杀进程) 二、通过Shell脚本自动部署项目1. 在Linux中安装Git2. 在Linux中安装maven3. 编写Shell脚本 (拉取代码、编译、打包、启动4. 为用户授予执行shell脚本的权限5. 执行Shell脚本 总结


前言

为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果能帮到一些萌新进行新技术的学习那也是极好的。作者菜菜一枚,文章中如果有记录错误,欢迎读者朋友们批评指正。
(博客的参考源码可以在我主页的资源里找到,如果在学习的过程中有什么疑问欢迎大家在评论区向我提出)

发现宝藏

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【宝藏入口】。

后端环境要搭好,如jdk、mysql、tomcat、maven、git等

一、手工部署项目

1.在IDEA中开发SpringBoot项目并打成jar包

在这里插入图片描述

2. 将jar包上传到Linux服务器

mkdir /usr/local/app ---- 创建目录,将项目jar包放到此目录

在这里插入图片描述

3. 输入指令启动SpringBoot程序

在这里插入图片描述

4. 检查防火墙,确保80端口(项目端口)对外开放,访问SpringBoot项目

在这里插入图片描述

5. 在windows访问项目

在这里插入图片描述

6. 改为后台运行SpringBoot程序,并将日志输出到日志文件

目前程序运行的问题 :
线上程序不会采用控制台霸屏的形式运行程序,而是将程序在后台运行线上程序不会将日志输出到控制台,而是输出到日志文件,方便运维查阅信息
nohup命令
nohup 命令 :
英文全称 no hang up (不挂起),用于不挂断地运行指定命令,退出终端不会影响程序的运行语法格式 :
nohup Command [ Arg …] [&]参数说明 :
Command :要执行的命念
Arg :一些参数,可以指定输出文件
& : 让命令在后台运行举例 :
nohup java -jar boot工程.jar &> hello.log & ---- 后台运行java -jar命令,并将日志输出到reboot.log文件

在这里插入图片描述

7. 停止SpringBoot程序(杀进程)

在这里插入图片描述

在这里插入图片描述

二、通过Shell脚本自动部署项目

在这里插入图片描述

1. 在Linux中安装Git

Git安装指令
yum list git ---- 列出git安装包yum install git ---- 在线安装git

在这里插入图片描述

使用Git克隆远程仓库代码
cd /usr/local/git clone https://gitee.com/Dongli_01/re_boot.git

在这里插入图片描述

2. 在Linux中安装maven

1. 将maven安装包上传到Linux

在这里插入图片描述

2. 解压安装包

tar -zxvf apache-maven-3.5.4-bin.tar.gz -C /usr/local

在这里插入图片描述

3. 在Linux中安装maven

vim /etc/profile ---- 修改配置文件,加入如下内容
export MAVEN_HOME=/usr/local/apache-maven-3.5.4export PATH=$ JAVA_HOME/bin:$ MAVEN_HOME/bin:$PATH

$ JAVA 和 $ MAVEN 中的 $ 和 J、M之间没有空格,此处是由于MD语法显示问题空一格

在这里插入图片描述

加载资源,查看maven版本
source /etc/profilemvn -version

在这里插入图片描述

vim /usr/local/apache-maven-3.5.4/conf/settings.xml ---- 设置一下 setting 文件,指定 maven 本地仓库的目录(repo目录需要自己创建),修改配置文件内容如下

< localRepository>/usr/local/repo</ localRepository>

注:< localRepository> 中的 < 和 l 以及 </ localRepository> 中的 / 和 l 之间没有空格,此处是由于MD语法问题空一格

在这里插入图片描述

3. 编写Shell脚本 (拉取代码、编译、打包、启动

Shell 脚本简介

Shell脚本 (shell script) ,是一种Linux系统中的脚本程序。使用Shel脚本编程跟Javascript、Java编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了

编写Shell 脚本
#!/bin/shecho =================================echo  自动化部署脚本启动echo =================================echo 停止原来运行中的工程APP_NAME=re_boottpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`if [ ${tpid} ]; then    echo 'Stop Process...'    kill -15 $tpidfisleep 2tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`if [ ${tpid} ]; then    echo 'Kill Process!'    kill -9 $tpidelse    echo 'Stop Success!'fiecho 准备从Git仓库拉取最新代码cd /usr/local/re_bootecho 开始从Git仓库拉取最新代码git pullecho 代码拉取完成echo 开始打包output=`mvn clean package -Dmaven.test.skip=true`cd targetecho 启动项目nohup java -jar re_boot-1.0-SNAPSHOT.jar &> re_boot.log &echo 项目启动完成

在这里插入图片描述

4. 为用户授予执行shell脚本的权限

1. 权限说明

chmod (英文全拼: change mode) 命令是控制用户对文件的权限的命令Linux中的权限分为: 读®、写(w)、执行(x)三种权限Linux的文件调用权限分为三级:文件所有者 (wner) 、用户组 (Group) 、其它用户 (Other Users)只有文件的所有者和超级用户可以修改文件或目录的权限要执行Shell脚本需要有对此脚本文件的执行权限,如果没有则不能执行

在这里插入图片描述
2. chmod命令简介

chmod命令可以使用八进制数来指定权限
#权限rwx
7读 + 写 + 执行rwx
6读 + 写rw -
5读 + 执行r - w
4只读r - -
3写 + 执行- wx
2只写- w -
1只执行- -x
0- - -
举例:
chmod 777 bootStart.sh ---- 为所有用户授予读、写、执行权限chmod 755 bootstart.sh ---- 为文件拥有者授予读、写、执行权限,同组用户和其他用户授予读、执行权限chmod 210 boot5tat.h ---- 为文件拥有者授予写权限,同组用户授予执行权限,其他用户没有任何权限
注意 :三位数字分别代表不同用户的权限
第1位表示文件拥有者的权限第2位表示同组用户的权限第3位表示其他用户的权限

5. 执行Shell脚本

在这里插入图片描述
在这里插入图片描述

总结

欢迎各位留言交流以及批评指正,如果文章对您有帮助或者觉得作者写的还不错可以点一下关注,点赞,收藏支持一下。
(博客的参考源码可以在我主页的资源里找到,如果在学习的过程中有什么疑问欢迎大家在评论区向我提出)

阅读本书更多章节>>>>

本文链接:https://www.kjpai.cn/gushi/2024-04-08/155563.html,文章来源:网络cs,作者:亙句,版权归作者所有,如需转载请注明来源和作者,否则将追究法律责任!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

文章评论