type
status
date
slug
summary
tags
category
icon
password
前后端部署到服务器
挂梯子观看才能看到图片,图片上传到github里面,要梯子才能连接上
环境:centos7
jdk:17
数据库:mysql 8.0.30
框架:springboot+mybatis,vue3
部署web:nginx-1.26.2
数据库的安装包、jdk安装包、nginx安装包在下面的连接可以找到
后端打包
把后端的配置文件的ip修改成服务器的ip,数据库之类的也要配置好
配置好后,利用Maven的打包程序,对程序进行打包
打包好后,可以在target文件夹下看到一个jar包,这个就是打包好的文件
把这个jar包文件放到自己可以找到的路径,后面要用到的
前端打包
同样的把配置文件里面有本地地址的换成服务器地址,不要有任何的localhost,否则后面部署好连不上后端
在终端进入前端项目的根目录,输入
npm run build
打包这就打包好了,打包的文件在项目里面有一个dist的文件夹
把这个文件夹保存到自己可以找到的路径,后面要用到的
通过ssh连接到服务器,本文用的是MobaXterm工具,方便后面上传文件
数据库部分
安装数据库
1.卸载MariaDB
安装MySQL会和MariaDB的文件冲突,所以需要先卸载掉MariaDB。
1.1 查看是否安装mariadb
1.2 卸载
可以看到是报错了
1.3 检查是否卸载干净
可以看到是没有删除干净,最后在Ai的帮助下,找到原因是依赖不兼容的问题,要更新依赖,再重新卸载
重新卸载
运行后会自动的更新依赖
两个都填y,后面会自动卸载掉mariadb
再次查看,发现已删除干净了
2.检查依赖
2.1 查看是否安装libaio
如果没有安装则执行
2.2 查看是否安装numactl
如果没有安装则执行
安装MySQL
1.上传安装包或者下载安装包
进入到/usr/local/目录
1.1官方下载上传(二选一)
把上面的下载下来的mysql-8.0.30-el7-x86_64.tar,上传到 /usr/local/ 目录下,上传比较慢,文件要1G左右
1.2 wget下载(二选一)
2.解压
注:本文安装包上传到了 /usr/local/ 目录下
1.拆分tar包
2.解压安装包
要等一会,等它解压完
3.重命名
将解压后的文件夹重命名为mysql
4.创建存储数据文件
在重命名后的mysql文件夹中创建data文件夹
5.设置用户组并赋权
创建用户组
创建用户
-r:创建系统用户
-g:指定用户组
更改属主和数组
更改权限
6.初始化MySQL
进入MySQL的bin目录
初始化
初始化完成后会打印一个随机密码,后面会用到。
7.配置参数文件
配置文件修改为以下内容,也可以根据自己需要设置参数。
配置后修改 /etc/my.cnf 的权限为777
8.启动MySQL
9.设置软连接,并重启MySQL
10.登录并更改密码
两种改密方式二选一
11.开放远程连接
12.连接工具测试连接MySQL
如果服务器本地可以连接,但是连接工具远程连接不进去,则需要检查一下防火墙是否放行3306端口,也可以暂时先关闭防火墙后重试。
关闭防火墙
查看是否正在监听mysql的端口
开启端口3306
重启防火墙
查看已经开放的端口
13.MySQL启动和停止
CentOS6和CentOS7命令都可以使用。
启动
停止
重启
查看状态
三、设置开机自启动(可选)
将服务文件拷贝到 /etc/init.d下,并重命名为mysqld
赋予可执行权限
添加服务
显示服务列表
注:如果看到mysqld的服务,并且3,4,5都是on的话则成功,如果是off,则执行
重启系统
重启后查看mysql是否开机自启动
ps -ef|grep mysql
数据库部署完成
安装nginx
上传安装包
解压文件
进入解压之后的nginx文件夹
配置文件
编译可能会出问题,原因可能是你的服务器没有安装C编译器
安装GCC
确认 GCC 安装成功
安装好后再重新运行配置文件命令,其中有其他的报错,自己Ai下
,最终的编译如下,这个报错不用管它
使用make命令完成安装
make是可以正常运行的,最后是这样的
nginx安装完成
安装jdk
上传jdk
进入到/usr/local/目录
查看是否有自带的 JDK
卸载自带 JDK
- 查看自带 JDK 是否卸载干净
解压上传 JDK 文件:
进入 JDK 解压目录下:
pwd打印当前目录结构:pwd
结果:
/usr/local/jdk-17.0.12
修改环境配置文件:
配置文件里
保存退出并重启 /etc/profile 使之重新生效:
验证 JDK 是否安装成功:
jdk安装完成
运行Jar包
把jar上传到服务器
然后就可以直接部署项目了,命令:
让项目后台运行(即关闭窗口,依然可以访问):(二选一)
nohup 不挂断运行的命令,当终端或者账户关闭的时候,程序依旧运行。(二选一)
当前的命令默认会把日志输出到nohup.out文件中
指定输出文件
查看后台启动命令
显示后台运行的程序。每个作业前面都有一个作业的编号。
查看端口进程
杀掉所有8080端口的进程
重新启动后台运行
看日志
这样就是正常运行了,后端
运行ngxin
上传vue3前端代码,上传到/usr/local/nginx-1.26.2/html/目录下
修改配置文件
重新加载文件
找到 Nginx 安装路径
创建Nginx 服务文件
设置可执行权限
重载 systemd 配置
检查和创建日志目录
检查和创建配置文件目录
重载 systemd 配置
验证 Nginx 配置
确认文件路径和权限,确保没有权限问题:
Nginx 工具再次验证配置文件
重启 Nginx 服务
当页面卡住了,就说明启动成功了,可以用网页访问下前端,可以看到是可以访问的
后端也可以对接上
- 作者:源殇
- 链接:https://ys.lvems.cc/article/16e19e8e-190f-8095-8558-c80e8a1699e8
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。