zoukankan      html  css  js  c++  java
  • linux上部署SpringBoot项目及遇到的问题

     打开sftp步骤, 在显示的已连接的窗口上右键, 选择connect SFTP Session就可以打开文件上传的窗口

     

    从windows上传文件到linux, 首先linux需要先切换到想要保存文件的目录下, 然后在找到windows中文件所在的目录, 最后使用 put 命令就能上传上去了

    第一步: 使用 ls 命令查看linux当前目录下的目录

    第二步: 使用 cd 命令进入linux保存上传文件的目录

    第三步:找到linux中保存文件的具体目录  (如果没有二级目录, 可以省略)

    第四步: 使用 lcd 命令切换windows下的目录  (linux跟windows的命令操作的区别是: 在linux命令前加上小写的 l  (不是大写的 i,不是大写的 i,不是大写的 i)  就是操作windows的命令)

    第五步: 切换到windows目录下后, 使用 lls 查看目录下有哪些文件

    第六步: 使用 put  文件名    命令上传文件到linux目录下, 保存目录就是一开始切换到的目录

    第七步: 使用 linux 的 ls 命令查看是否上传成功

    总的来说, 就是使用 lcd 切换到安装包所在的目录, 然后使用 cd 命令切换到要安装的目录,  然后使用 put  包名    就可以上传到linux中了

    接下来, 解压安装包, 使用 tar -zvxf 压缩包  解压到当前目录 

     解压jdk后需要配置环境变量

    先将目录切换到jdk后的文件目录, 使用 pwd 命令查看解压后的jdk的完整路径, 这个路径在后面的环境变量中需要使用

    使用 vi  /etc/profile   命令, 修改系统环境变量  (进去编辑器后, 点击 i 进去编辑模式, 然后输入环境变量后, 使用按下 esc 键 退出, 然后直接输入 :wq 保存并退出即可)

    在文件的最后加上

    #set java environment 
    JAVA_HOME= /xx/xx/jdk1.8    这里是上面使用 pwd 查出的路径
    PATH=$PATH:$JAVA_HOME/bin:$PATH
    CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export JAVA_HOME PATH CLASSPATH

    使用 source /etc/profile 命令, 从新加载, 使其生效, 生效后使用java -version查看是否成功  (不成功使用 cat /etc/profile 命令查看系统环境是否添加了jdk路径, 添加的路径是否有错)

    测试tomcat是否可用

    首先linux下切换到tomcat的bin目录下, 使用命令 ./startup.sh 启动tomcat   (关闭tomcat使用  ./shutdown.sh)

    然后需要关闭防火墙, 这样才能实现外部访问 (开启防火墙使用 systemctl start firewalld 命令

    最后打开浏览器, 输入   服务器地址:8080  (tomcat默认端口是8080)

     

    部署项目到linux上

    在本地将项目打成war包

    我的项目是SpringBoot项目

      这里说下遇到一个坑:

        在SpringBoot的启动类中需要继承SpringBootServletInitializer ,并重写configure方法, 这样在tomcat的日志中才会有项目加载日志出来,项目才能启动成功, 不然会出现访问页面可以, 访问方法报404错误,因为项目没有启动成功

    package mobi.weiapp.cms;
    
    import org.springframework.boot.builder.SpringApplicationBuilder;
    import org.springframework.boot.web.support.SpringBootServletInitializer;
    
    /**
     * war打包时指定启动类
     */
    public class ServletInitializer extends SpringBootServletInitializer {
        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder application){
            return application.sources(CmsApplication.class);
        }
    }

    ,使用maven打包, 需要在pom文件中修改打包方式, 使用war包

    然后,先clear一下, 在使用package打包

     在项目中会有个target文件, 这里就有打包好的war包

    接下来部署到tomcat中

        将war包上传到tomcat的webapps下, 这里说一个技巧, 可以在没上传前将war包 名改成ROOT.war, 将tomcat中的ROOT文件夹删除( rm -rf ROOT ), 这样的好处是: tomcat自动解压war包, 会生成一个ROOT文件夹, 里面就是我们的项目, 启动tomcat后, 在浏览器中访问项目就不用在端口号后面添加war包名了, 还有个好处就是后台接口也不用在请求前面加上war包名, 不会出现404错误

    部署后的结果就是

    切换到tomcat目录下的logs目录下, 使用 tail -f catalina.out 命令可以打印日志

     然后重新开一个窗口, 切换到tomcat的bin目录下, 启动tomcat, 在浏览器中输入  服务器ip:8080(默认)/xx.html就可以访问项目了

    假设我的服务器ip是: 172.168.16.16, 我的项目首页是login.html  那么我的请求地址就是  172.168.16.16:8080/login.html

    至此, 一个SpringBoot项目部署成功

  • 相关阅读:
    Excel函数和公式——Excel基础(8)
    Excel函数和公式——Excel基础(7)
    条件格式与公式——Excel基础(6)
    日期函数——Excel基础(5)
    Excel导入邮件合并——Excel基础(4)
    VScode与ssh
    python绘图相关知识点
    Python加密成.so或dll
    Pytorch从本地获取数据集
    Pytorch_3.3_ 线性回归的简洁实现
  • 原文地址:https://www.cnblogs.com/gczmn/p/10135529.html
Copyright © 2011-2022 走看看