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項目部署成功

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM