Springboot項目的服務(wù)器部署與發(fā)布方式
Springboot 項目的服務(wù)器部署與發(fā)布
本文旨在記錄第一次將Springboot項目部署到服務(wù)器并發(fā)布的過程、遇到的問題及解決辦法。
一、在IDEA中將項目打包
設(shè)置訪問端口號
在application.yml這個文件中加入(端口多少由自己設(shè)置)

利用idea打包
右側(cè)邊欄中點擊Maven,打開lifecycle,找到其中的package選項,雙擊。
當(dāng)看到BUILD SUCCESS說明已經(jīng)打包成功了。
jar包保存在項目target文件夾中




二、 連接服務(wù)器
租用云服務(wù)器
市面上有許許多多的服務(wù)器,可自行選擇。這里以Google cloud云服務(wù)器為例介紹。
1、訪問 Google cloud 官網(wǎng) https://cloud.google.com/,點擊右上角“Start Free”按鈕。

2、登錄谷歌帳號
使用谷歌帳號登錄,沒有的話注冊一個。
2019年,國家/地區(qū)選項欄已取消了“中國”選項,這里我們可以隨便選一個,比如香港或者臺灣。

3、填寫注冊信息
填寫注冊信息,包括姓名、地址、聯(lián)系方式等。
綁定支持雙幣個人信用卡,會扣除1美元作為卡驗證費用,驗證通過后會原路返還。

4、完成注冊
填寫完上述資料后,點擊“START MY FREE TRIAL”按鈕,便提示已成功注冊。獲得 300 美元的贈金,一年內(nèi)有效,而且承諾如果贈金用完,不會主動扣費。

創(chuàng)建VM實例
1、選擇 “Computer Engine”
點擊菜單中的 Compute Engine,或者直接點擊熱門產(chǎn)品欄中的“Compute Engine”

2、選擇創(chuàng)建 VM 實例
點擊創(chuàng)建按鈕,來創(chuàng)建一個 VM 實例。

3、填寫機器配置
填寫名稱,選擇區(qū)域,機器類型等內(nèi)容,右側(cè)會顯示每月的費用,注意累計費用不要超出贈金總額。這里選擇了 1 個共享 vCPU + 1.7 GB 內(nèi)存。

4、啟動磁盤
選擇啟動磁盤,可以修改磁盤大小和類型,還可以選擇操作系統(tǒng)。

5、填寫網(wǎng)絡(luò)接口信息
填寫網(wǎng)絡(luò)接口信息,外部 IP 選擇固定 IP。

6、完成創(chuàng)建
確認機器配置信息后,點擊創(chuàng)建按鈕完成 VM 實例的創(chuàng)建。

防火墻配置
1、選擇“查看網(wǎng)絡(luò)詳情”
點擊實例信息右側(cè)的更多圖標,選擇“查看網(wǎng)絡(luò)詳情”。

2、創(chuàng)建防火墻規(guī)則
點擊“防火墻規(guī)則”,選擇“創(chuàng)建防火墻規(guī)則”。

3、完成創(chuàng)建
創(chuàng)建防火墻規(guī)則,需要注意的是,目標一欄選擇“網(wǎng)絡(luò)中的所有實例”,不然外網(wǎng)無法訪問。

三、通過xshell遠程連接服務(wù)器
進入xshell官網(wǎng)
xshell官網(wǎng)地址 :https://www.xshell.com/zh/xshell/
1、點擊下載

2、選擇免費授權(quán)頁面

3、下載XSHELL

連接服務(wù)器
方法一:手動配置
點擊左上角文件下方的綠色按鈕新建會話,彈出如下窗口。
- 名稱——會話名稱
- 協(xié)議——ssh連接選擇協(xié)議
- 主機——要連接的服務(wù)器ip
- 端口號——要連接的服務(wù)器端口
- 確定——確定建立新會話

方法二:命令行輸入
在命令行中輸入:
ssh root@IP號:端口號

四、在linux服務(wù)器安裝環(huán)境上傳jar包
1、首先需要熟悉一下linux的命令:
Linux命令速查表:https://quickref.cn/docs/linux-command.html
2、輸入命令ls展示當(dāng)前目錄下文件

什么都沒顯示說明當(dāng)前目錄為空
3、使用mkdir命令創(chuàng)建目錄

若出現(xiàn)以下情況,說明用戶權(quán)限不夠,需要添加權(quán)限或者使用root登錄

添加用戶添加權(quán)限方法:
首先進入root用戶,打開終端
- 新建用戶并創(chuàng)建家目錄
sudo useradd -d /home/xpt -m xpt
- 更改為bash命令
sudo usermod -s /bin/bash xpt
- 設(shè)置密碼
sudo passwd xpt
- 設(shè)置sudo權(quán)限
sudo chmod u+w /etc/sudoers sudo vi /etc/sudoers
4、cd命令進入目錄

5、使用rz命令上傳jar包
彈出打開窗口,找到項目中的target目錄,找到j(luò)ar包并選擇打開


上傳完畢后使用 ls 命令,jar包已成功上傳。

(在上傳過程中可能出現(xiàn)如下報錯:)

(出現(xiàn)亂碼、連接斷開,并且無法通過命令行輸入重新連接)

失敗原因:
經(jīng)過查閱資料,有可能是因為windows的文件帶有一些特殊字符,編碼方式不同,導(dǎo)致傳輸失敗。
解決方法:
重新打開會話重新連接服務(wù)器,并使用rz -be 命令
安裝JDK
錯誤方法:
將windows系統(tǒng)中的JDK壓縮并通過rz命令上傳至linux服務(wù)器,通過zip命令解壓JDK,并配置環(huán)境變量。
結(jié)果:
無法使用
正確方法:
1、進入官網(wǎng)下載
官網(wǎng) - 歷史版本下載地址:https://www.oracle.com/java/technologies/downloads/archive/

選擇一款JDK后,選擇x86Linux系統(tǒng)的版本下載

2、將JDK上傳至Linux服務(wù)器
- 使用mkdir命令創(chuàng)建一個java目錄
mkdir java
- 使用cd命令進入java目錄
cd java
- 使用rz命令上傳JDK壓縮包
rz

使用tar -zxvf命令解壓JDK壓縮包
tar -zxvf jdk-20.0.2_linux-x64_bin.tar.gz

壓縮完成后會出現(xiàn)新的文件夾

配置環(huán)境變量
1、配置profile文件
通過vi命令打開/etc/profile文件


點擊鍵盤中的INSERT按鈕,進入編輯。
在文件的最后加上以下代碼:
export JAVA_HOME=/home/wrz/java/jdk-20.0.2export PATH=$JAVA_HOME/bin:$PATHexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
(注意第一句 export JAVA_HOME=/home/wrz/java/jdk-20.0.2是自己的jdk的路徑)
按下ESC退出編輯模式,輸入:wq! 保存并退出
報錯:

原因:權(quán)限不足
解決方法:使用sudo語句或使用root賬號登錄
(輸入密碼時不會顯示)


編輯完路徑后使用wq!保存并退出。
2、重新加載配置文件
使用source命令
source /etc/profile

java -version 命令可使用,路徑配置完成。
五、 運行項目
nohup命令
用途:
不掛斷地運行命令。
語法:
nohup Command [ Arg … ] [ & ]
- 無論是否將 nohup 命令的輸出重定向到終端,輸出都將附加到當(dāng)前目錄的 nohup.out 文件中。
- 如果當(dāng)前目錄的 nohup.out 文件不可寫,輸出重定向到 $HOME/nohup.out 文件中。
- 如果沒有文件能創(chuàng)建或打開以用于追加,那么 Command 參數(shù)指定的命令不可調(diào)用。
退出狀態(tài):
該命令返回下列出口值:
- 126 可以查找但不能調(diào)用 Command 參數(shù)指定的命令。
- 127 nohup 命令發(fā)生錯誤或不能查找由 Command 參數(shù)指定的命令。
- 否則,nohup 命令的退出狀態(tài)是 Command 參數(shù)指定命令的退出狀態(tài)。
&命令
用途:
在后臺運行
nohup command &
通過nohup和&命令可以實現(xiàn)項目在服務(wù)器后臺一直掛載運行
1、使用nohup命令運行jar包
nohup java -jar Bolg-0.0.1-SNAPSHOT.jar &

2、查看項目日志
tail -500f nohup.out

3、查看進程
使用語句
ps -ef

至此,項目已在服務(wù)器端運行。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Kotlin?標準函數(shù)和靜態(tài)方法示例詳解
這篇文章主要為大家介紹了Kotlin?標準函數(shù)和靜態(tài)方法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-10-10
詳解Java?ThreadPoolExecutor的拒絕策略
這篇文章主要介紹了Java?ThreadPoolExecutor的拒絕策略,本文對于線程的池的幾種策略進行詳細的講解,在實際的生產(chǎn)中需要集合相關(guān)的場景來選擇合適的拒絕策略,需要的朋友可以參考下2022-08-08
Maven項目部署到Jboss出現(xiàn)Failed to create a new SAX parser
這篇文章主要為大家詳細介紹了Maven項目部署到Jboss出現(xiàn)Failed to create a new SAX parser的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-11-11
Springboot 緩存@Cacheable 的引入和使用
@Cacheable是Spring緩存抽象的核心注解,作用是將方法的返回結(jié)果緩存起來,本文給大家介紹Springboot緩存@Cacheable的引入和使用,感興趣的朋友跟隨小編一起看看吧2026-03-03

