前后端分离项目如何部署到服务器
前言
前年部署过到服务器,但是时间太久忘记了,最近因为毕设要求,操作了好久,看网上教程也踩了很多的坑,所以打算自己写一篇笔记,也给同学们一个参考。
实操开始
前后端分离是一种现代Web开发架构,它将前端(用户界面)和后端(服务器逻辑和数据处理)分离开来,使得两者可以独立开发、测试和部署。
我们可以使用云服务器或者虚拟机来部署服务,本项目使用阿里云服务器演示
后端部署
首先我们需要修改一下yml配置文件,把MySQL、Redis修改为服务器上的端口和密码
之后我们就可以打jar包了,先执行maven的clean插件,然后再执行install
之后我们把对应的jar包,上传到我们的服务器上面,我这边是直接使用阿里云的文件上传工具,你们可以使用MobaXterm等开源的软件
因为我们的服务需要有Java和MySQL及Redis的环境 ,我这边MySQL和Redis使用docker镜像的形式 `拉取MySQL镜像: docker pull mysql:latest 拉取Redis镜像: docker pull redis:latest
启动容器: docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=my-secret-pw -e MYSQL_DATABASE=mydatabase -e MYSQL_USER=myuser -e MYSQL_PASSWORD=mypassword -p 3306:3306 -d mysql:latest docker run --name redis-container -p 6379:6379 -d redis:latest`
前端打包
要在vite.config.js文件配置好对应的端口和后端访问地址 然后我们使用npm run build:prod 打包,然后就能生成dist文件
然后我们把整个dist文件传输到服务器,可以先将其打包成zip,然后到服务器再使用命令解压
Nginx
▼text复制代码这个步骤是最容易出错的部分,我们使用docker先下载和启动nginx镜像,要记得在安全组开放89端口
