SpringBoot项目打包并发布到linux线上详细记录全过程,详细!

这里写目录

  • 前期准备
  • 使用Maven打包项目
    • 处理静态文件以及端口号
      • application.yml配置
      • MVCconfig
    • 打包
  • 安装JDK
  • 将jar包传输到linux服务器上
  • java运行jar包
  • 额外:使用域名访问
    • 安装nginx
      • 配置nginx
    • 效果

前期准备

  1. 一台线上linux服务器.阿里云,腾讯云,华为云或者国外的vps都可以
  2. ssh工具,像xshell,putty
  3. sftp传输工具,像filezilla. 传输jar包文件
  4. java jdk linux 安装包, 官网即可下载

使用Maven打包项目

处理静态文件以及端口号

如果引入了外部文件,像upload上传图片的功能, 需要设置目录为linux目录
一般在windows上开发,windows和linux不一样

application.yml配置

SpringBoot项目打包并发布到linux线上详细记录全过程,详细!_第1张图片

MVCconfig

写个java iimplements WebMvcConfigurer
SpringBoot项目打包并发布到linux线上详细记录全过程,详细!_第2张图片

    //    接入虚拟路径(解决重启服务器才显示图片的问题)
    // 拦截本地路径
    @Value("${web.upload-path}")
    private String path;
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry){
   // addResourceHandler: ( 存储图片的虚拟路径,在 static 目录下的 picture 文件夹,用于存储上传图片)
        // addResourceLocations: ( file: + 存储图片的路径)    
        registry.addResourceHandler("/images/**").addResourceLocations("file:"+path);

    }

打包

步骤:

忽略掉test测试,防止发布到线上出现各种问题

SpringBoot项目打包并发布到linux线上详细记录全过程,详细!_第3张图片

成功后会在target目录下生成

SpringBoot项目打包并发布到linux线上详细记录全过程,详细!_第4张图片

版本号与pom.xml 中version有关

SpringBoot项目打包并发布到linux线上详细记录全过程,详细!_第5张图片

安装JDK

参考文章: linux安装java1.8 jdk并配置环境变量

像阿里云和腾讯云需要配置安全组,

参考连接:阿里云安全组配置方法

将jar包传输到linux服务器上

SpringBoot项目打包并发布到linux线上详细记录全过程,详细!_第6张图片

java运行jar包

为了方便,写一个start.sh脚本 方便日后更新版本执行

vim start.sh

nohup java -jar emsdemo-0.1.8-SNAPSHOT.jar >springboot.log 2>&1 &

chmod +x start.sh

SpringBoot项目打包并发布到linux线上详细记录全过程,详细!_第7张图片

运行 并查看运行日志

./start.sh

cat springboot.log 

然后在浏览器输入你的ip:端口号就可以访问了
SpringBoot项目打包并发布到linux线上详细记录全过程,详细!_第8张图片

额外:使用域名访问

如果我想通过域名直接访问项目,不想用ip+ 端口号的方式

国内的服务器域名绑定需要备案,国外不用

思路:
默认域名绑定80端口,所以使用nginx 端口转发功能

安装nginx

如果不想手动安装,安装宝塔,用宝塔安装和配置
宝塔安装:linux安装宝塔

配置nginx

SpringBoot项目打包并发布到linux线上详细记录全过程,详细!_第9张图片

 server
    {
        listen 80;
        #server_name phpmyadmin;
        #index index.html index.htm index.php;
        #root  /www/server/phpmyadmin;

        #error_page   404   /404.html;
        #include enable-php.conf;

        location / {
             proxy_pass http://sizaif.com:8080;
        }
    }

然后relod nginx 过一会通过域名就可以访问了

效果

SpringBoot项目打包并发布到linux线上详细记录全过程,详细!_第10张图片

你可能感兴趣的:(JAVA学习之天天向上)