前言
作为一名程序员,项目的部署是避不开的问题,也就是所谓的上线,是将我们本地开发好的项目部署到远程服务器上,使得任何机器都可以通过我们远程服务器的公网ip或者域名加上端口号访问到我们的项目,非常的帅气,借由此篇做一下记录
大概流程:
环境搭建: 我们以当下最流行的springboot项目为例,最终打成的是一个jar包,jar包要在远程服务器上跑起来,环境搭建是第一步,也就是安装jdk环境,至于tomcat的话,springboot自带tomcat,所以不安装也可以;
数据库的部署: 在本地开发的时候,我们代码里面的数据库连接主机名写的是localhost,之所以这样写了能访问到,那是因为我们的项目和数据库都在我们的本地机器上,所以可以访问到;而如果项目部署到远程服务器上,要访问到数据库,应该先部署数据库,至于数据库连接还能不能写localhost,要分两种情况,如果我们的数据库和项目都部署到了同一台远程服务器上,那可以;如果部署在不同机器上,那显然不行,这种情况的话数据库连接的主机名就需要修改成数据库所部署的那台机器的公网ip或者域名。
上面两步操作完成之后,就可以把本地打好的jar包上传到远程服务器上,远程服务器进入jar包所在目录,执行 java -jar jar包名 即可启动项目,至此,项目部署完成!
一 前端项目部署
1.1 项目发布端口号说明
- localhost:8000 前端脚手架的客户端工具.
- localhost:8080 前端的业务服务器.
- localhost:8091-8093 后端业务服务器.
1.2 前端项目发布说明
前端项目其实就是静态资源的集合体. HTML/CSS/JS, 静态资源通常是由脚手架工具进行编译之后生成的文件.
--编译项目:
--检查静态资源文件:
1.3 前端项目发布准备![](https://i-blog.csdnimg.cn/blog_migrate/88ef775289765884c5f0ada6d5e8330b.png)
附链接:Linux安装Nginx步骤_闪耀太阳的博客-CSDN博客_linux nginx 教程
-- 修改main.js
-- 修改AddItem.vue
-- 将前端项目重新打包
2.4 前端项目
服务器说明: 由于生产环境下 不需要安装脚手架工具,所以没有8080的服务器. 所以需要准备一个可以抗击高并发的web前端服务器. 所以可以将nginx 当做web服务器使用.
-- 打包完成后,上传静态资源文件到nginx根目录中
-- 配置反向代理 web.jt.com 说明: 修改完成之后记得保存!!!,之后重启nginx
#3.配置前端代理服务器
server {
listen 80;
server_name web.jt.com;
location / {
root dist;
index index.html;
}
}
-- 项目发布
二 完成Linux项目发布
前言
我们项目大部分最终都要部署在linux服务器上的,所以linux的学习必不可少
2.1 linux路径学习![](https://i-blog.csdnimg.cn/blog_migrate/23881d987377523c732798016095ca4c.png)
2.2 安装JDK
2.2.1:上传jdk安装包 ,确定jdk安装包位置
2.2.2 : 确定Linux的目录,并且上传文件
2.2.3: 解压文件 命令:tar -xvf jdk-8u51-linux-x64.tar.gz
2.2.4:检查jdk是否有效
2.2.5:jdk环境变量配置
命令1: vim /etc/profile
#设定jdk环境
export JAVA_HOME=/usr/local/src/jdk1.8
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib
命令2: 让环境变量有效 source /etc/profile
三 Linux项目发布
3.1 linux项目发布流程图![](https://i-blog.csdnimg.cn/blog_migrate/b44342f6f928e8a7de4d00d19e00cea2.png)
3.2 安装Mariadb数据库
附链接:Linux安装MariaDB数据库_闪耀太阳的博客-CSDN博客_linux安装mariadb数据库
3.3 部署tomcats集群
3.3.1 修改业务配置:
-- 修改数据库配置
-- 修改文件上传根目录
-- 检查pom.xml文件
3.3.2 tomcat服务器部署:
-- 上传jar包文件
-- 运行jar包文件
命令: java -jar 8091.jar &
-- 启动测试
3.3.3 关闭tomcat服务器
-- 检索java 服务项 jps
-- 关闭进程
kill pid号
kill -15 pid号
kill -9 pid号 强制杀死 线程直接终止 慎用!
3.3.4 准备多台tomcat服务器
-- 准备8091/8092/8093三台服务器,之后完成代码调试
-- 效果测试
3.3.5 项目后端运行
说明: 由于上述的命令 操作时程序与客户端窗口绑定,则该操作是前端绑定, 如果客户端窗口关闭,则服务停止. 所以后期项目发布采用后端项目运行的方式.
命令: nohup java -jar 8091.jar => 8091.log &
3.3.6 日志检查
cat 输出文件所有的内容
more 输出文档所有的内容,分页输出,空格浏览下一屏,q退出
less 用法和more相同,只是通过PgUp、PgOn键来控制
tail 用于显示文件后几号,使用频繁
tail -10 nginx.conf 查看nginx.conf的最后10行
tail –f nginx.conf 动态查看日志,方便查看日志新增的信息
ctrl+c 结束查看
3.3.7 脚本启动方式
说明: 如果每次都启动单台服务器,启动的效率很低, 可以考虑采用脚本的方式运行.
命令:
1. vim start.sh
2. 编辑脚本文件:
#!/bin/sh
nohup java -jar 8091.jar => 8091.log &
nohup java -jar 8092.jar => 8092.log &
nohup java -jar 8093.jar => 8093.log &
3. 运行脚本 sh start.sh