宝贝代码部署笔记

news/2024/11/29 1:41:11/

记录前后端分离项目部署到云服务器;前端使用vue,element-ui,axios,router进行开发;后端使用springboot,mybatis,MySQL进行开发;完整记录前端项目npm打包静态文件,后端项目打包jar包;前后端项目运行环境搭建,包括MySQL数据库启动,阿里云服务器与Linux系统防火墙规则开启,Nginx服务器的安装与配置

文章目录

  • 1. 启动数据库
  • 2. 创建数据库
  • 3. 阿里云开放端口
  • 4. 运行SQL文件
  • 5. 打包前端文件
  • 6. 服务端创建文件夹
  • 7. 打包后端jar包
  • 8. 安装配置Nginx服务器
  • 9. 启动Tomcat
  • 10. 项目文件上传部署

1. 启动数据库

使用命令cd /opt/mysql/support-files进入support-files目录

使用命令./mysql.server start启动MySQL服务

使用命令mysql -uroot -p,之后输入密码RvvUy9hbwdDuFKl即可进入MySQL数据库命令行

2. 创建数据库

使用SQL语句CREATE USER 'ssmdb'@'%' IDENTIFIED BY 'ssmdb'创建数据库独立用户

使用SQL语句GRANT ALL PRIVILEGES on ssmdb.* to 'ssmdb'@'%'为数据库独立用户授权

3. 阿里云开放端口

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

4. 运行SQL文件

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

5. 打包前端文件

运行命令npm run build打包前端文件,生成所需的文件在dist目录
在这里插入图片描述

6. 服务端创建文件夹

创建日志目录

在这里插入图片描述

创建上传文件目录

在这里插入图片描述

7. 打包后端jar包

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

在这里插入图片描述

8. 安装配置Nginx服务器

在这里插入图片描述

使用命令cd /usr/local/nginx-1.20.1/进入nginx解压后的目录
使用命令yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel安装依赖
使用命令./configure --prefix=/opt/nginx指定安装位置
使用命令make预编译
使用命令make install安装
使用命令cd /opt/nginx/sbin进入目录
安装成功,使用命令./nginx启动 nginx

使用命令./nginx -s reload重载配置文件
使用命令./nginx -s stop停止nginx
使用命令ps -ef | grep nginx查看 nginx 进程
在这里插入图片描述
出现下图所示,则说明Nginx部署成功
在这里插入图片描述
前后端分离的项目可能会存在跨域的问题,现在提供两个解决方法
方法一: 使用Nginx做端口代理,前端的所有请求转发到后端服务,具体Nginx配置如下图所示
使用命令vim /opt/nginx/conf/nginx.conf设置Nginx端口转发文件,如下图所示:
在这里插入图片描述
方法二: 直接在服务器放行后端端口,比如笔者的后端端口是9999,设置Linux系统防火墙,将9999端口放行
具体操作如下所示:

linux7.6系统防火墙相关设置

  1. 使用如下命令检验防火墙是否启动
    firewall-cmd --state
  2. 使用如下命令检查系统已经开放的所有端口
    firewall-cmd --permanent --zone=public --list-ports
  3. 使用如下命令开启 9999 端口:
    firewall-cmd --zone=public --add-port=9999/tcp --permanent
  4. 使用如下命令重新启动防火墙
    firewall-cmd --reload
  5. 使用如下命令验证 9999 端口是否生效
    firewall-cmd --zone=public --query-port=9999/tcp

防火墙的启动与关闭

systemctl start firewalld #启动防火墙
systemctl stop firewalld #停止防火墙
systemctl disable firewalld.service #禁止firewall开机启动
systemctl enable firewalld.service #设置开机启用防火墙

9. 启动Tomcat

使用命令cd /opt/apache-tomcat-9.0.37/bin进入指定目录,使用命令./startup.sh启动Tomcat

10. 项目文件上传部署

打包好的项目前后端文件放在桌面,如下图所示:
在这里插入图片描述
将前端文件上传服务器,如下图所示:
在这里插入图片描述
在这里插入图片描述
将后端文件上传服务器,如下图所示:
在这里插入图片描述
使用命令nohup java -jar news.jar > /dev/null 2> /dev/null &运行jar包文件
nohup表示即使退出终端该进程也不会被杀掉, & 放在命令到结尾,表示后台运行
/dev/null 表示空设备文件 (位桶(bit bucket)或者黑洞(black hole)的地方)
0 表示stdin标准输入
1 表示stdout标准输出
2 表示stderr标准错误

部署成功如下图所示:
在这里插入图片描述


http://www.ppmy.cn/news/18597.html

相关文章

珍惜能在公司上班的每一天——2022年个人工作总结

本文由Markdown语法编辑器编辑完成。 1. 前言: 2022年不知不觉就过去了。在过去的一年里,虽然身在北京,哪里也没有去,但还是避免不了受到疫情的影响,被封控在家。 就在刚过去的一段时间,从11月18日周五下班&#xff…

详解Map和Set

目录 一、二叉搜索树 1、概述 2、模拟实现搜索二叉树 a、向搜索二叉树中插入数据 b、查找二叉搜索树的指定值的结点 c、删除二叉树的指定值的结点 3、对二叉搜索树进行性能分析 二、Map的使用 1、Map简介 2、Map常用方法 ​编辑三、Set的使用 1、Set简介 2、S…

初识C语言:IDE的选择与使用【C语言】

本文是本专栏【C语言】的第一篇文章,也是博主最近半年以来的更新第一篇文章,如果觉得有帮助,可以点赞支持一下!另外本专栏最后会做一篇类似于【python爬虫】专栏最后的那篇整合的文章,把C语言的所有基础知识用一篇文章…

shardingshere5.2.1 + seata1.5.2实现AT模式的分布式事务

文章目录 一、客户端引入shardingshere1.1 引入依赖1.2 修改配置文件,按照业务垂直分库二、集成seata的AT事务2.1 修改conf文件下application.yml配置文件,访问nacos的配置文件,并将服务端注册到nacos2.2 在nacos上创建配置文件 seataServer.properties2.3 创建数据库连接2.…

今宵除夕夜,天涯共此时

岁岁除夕,今又除夕,岁岁年年,此情此景,今又重来。 岁岁年年景相似,年年岁岁人不同。 多少年前的除夕,也一如今天这样的除夕。 多少年后的除夕,也一如多少年前的除夕。 岁月轻飘飘地从我身上跨过…

DPU网络开发SDK—DPDK(四)

rte_eal_init() 接上次内容继续对rte_eal_init()所做的工作进行分析。 12. 初始化配置 rte_config_init()中,会根据process_type进行不同的初始化任务。process_type是由eal的启动参数指定的,目前支持两种模式:primary和secondary。proces…

【Mongoose笔记】TCP 客户端与服务器

【Mongoose笔记】TCP 客户端与服务器 简介 Mongoose 笔记系列用于记录学习 Mongoose 的一些内容。 Mongoose 是一个 C/C 的网络库。它为 TCP、UDP、HTTP、WebSocket、MQTT 实现了事件驱动的、非阻塞的 API。 项目地址: https://github.com/cesanta/mongoose学习…

Python版本PathPlanning运动规划库中RotationToWorldFrame函数内部计算过程分析

本文主要对Python版本PathPlanning运动规划库中RotationToWorldFrame函数的内部计算过程分析,包括相关必备python基础和计算过程分析两部分,并给出了等效的MATLAB版本计算过程程序,方便分析对比。 (注:RotationToWorld…