最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

在Ubuntu上部署SpringBoot應(yīng)用的操作步驟

 更新時間:2025年01月10日 10:39:53   作者:Damon小智  
隨著云計算和容器化技術(shù)的普及,Linux 服務(wù)器已成為部署 Web 應(yīng)用程序的主流平臺之一,Java 作為一種跨平臺的編程語言,具有廣泛的應(yīng)用場景,本文將詳細介紹如何在 Ubuntu 服務(wù)器上部署 Java 應(yīng)用,需要的朋友可以參考下

一、部署準備

在開始之前,請確保你具備以下條件:

  • 一臺運行 Ubuntu(如 Ubuntu 20.04 或 22.04)的服務(wù)器,具有 SSH 訪問權(quán)限。
  • Java 應(yīng)用程序的可執(zhí)行 JAR 文件,確保在本地能夠正常運行。

二、安裝 Java 環(huán)境

首先,你需要在 Ubuntu 上安裝 Java 運行環(huán)境(JRE)或 Java 開發(fā)工具包(JDK),以便能夠運行 Java 應(yīng)用。

1. 安裝 JDK

Ubuntu 提供了 OpenJDK(Java 的開源實現(xiàn))。你可以選擇安裝 JDK 8(業(yè)內(nèi)主流版本)或 OpenJDK 17(業(yè)內(nèi)下一個主流版本)。

sudo apt install openjdk-17-jdk -y

2. 驗證 Java 安裝

安裝完成后,你可以使用以下命令檢查 Java 是否安裝成功:

java -version

你應(yīng)該看到類似于以下的輸出,表示 Java 安裝成功:

openjdk version "17.0.2" 2021-04-20
OpenJDK Runtime Environment (build 11.0.11+9-60)
OpenJDK 64-Bit Server VM (build 11.0.11+9-60, mixed mode)

三、安裝 MySQL(如需)

1. 安裝MySQL服務(wù)器

sudo apt install mysql-server -y

2. 啟動并設(shè)置MySQL開機自啟

sudo systemctl start mysql
sudo systemctl enable mysql

3. 驗證MySQL安裝

登錄MySQL以確認安裝成功。

sudo mysql -u root -p

MySQL默認密碼是root,直接登錄即可。

4. 修改初始密碼

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_password';

5. 創(chuàng)建庫和表

這里我們用SQL語句把項目需要的數(shù)據(jù)庫建好即可。

四、部署 Java 應(yīng)用

你可以通過構(gòu)建一個可執(zhí)行的 JAR 文件來部署 Java 應(yīng)用程序。
假設(shè)你已經(jīng)有一個構(gòu)建好的 JAR 文件,將你的 JAR 文件傳輸?shù)?Ubuntu 服務(wù)器上的目標目錄。
在服務(wù)器上進入應(yīng)用目錄并運行 JAR 文件。

cd /var/www/java-app
java -jar app.jar

此時你的 Java 應(yīng)用正在 8080 端口上運行。

五、配置 Nginx 作為反向代理(可選)

為了通過瀏覽器訪問你的 Java 應(yīng)用,你需要配置 Nginx 作為反向代理,將客戶端請求轉(zhuǎn)發(fā)到 Java 應(yīng)用。以下是配置反向代理的步驟。

1. 安裝 Nginx

如果 Nginx 尚未安裝,可以使用以下命令進行安裝:

sudo apt install nginx -y

2. 配置 Nginx

打開 Nginx 的配置文件進行編輯:

sudo nano /etc/nginx/sites-available/default

修改 server 塊中的配置,將請求轉(zhuǎn)發(fā)到 Java 應(yīng)用的端口(如 8080):

server {
    listen 80;

    server_name your-domain.com;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

保存并退出配置文件。

3. 測試并重啟 Nginx

測試 Nginx 配置是否正確:

sudo nginx -t

如果配置無誤,重啟 Nginx:

sudo systemctl restart nginx

此時,Nginx 已經(jīng)成功配置為將所有請求轉(zhuǎn)發(fā)到 Java 應(yīng)用。

六、設(shè)置 Java 應(yīng)用為系統(tǒng)服務(wù)(可選)

為了確保 Java 應(yīng)用在系統(tǒng)啟動時自動啟動,并且可以通過 systemctl 管理,我們需要將應(yīng)用配置為一個 systemd 服務(wù)。

1. 創(chuàng)建 systemd 服務(wù)文件

創(chuàng)建一個新的 systemd 服務(wù)文件來管理 Java 應(yīng)用:

sudo nano /etc/systemd/system/java-app.service

將以下內(nèi)容添加到文件中:

[Unit]
Description=Java Web Application
After=network.target

[Service]
User=your-user
ExecStart=/usr/bin/java -jar /var/www/java-app/app.jar
SuccessExitStatus=143
TimeoutStopSec=10
Restart=on-failure
WorkingDirectory=/var/www/java-app

[Install]
WantedBy=multi-user.target
  • ExecStart:指定啟動應(yīng)用的命令。
  • WorkingDirectory:指定應(yīng)用的工作目錄。
  • Restart:確保應(yīng)用崩潰時會自動重啟。

2. 啟動并啟用服務(wù)

重新加載 systemd 配置,使新服務(wù)生效:

sudo systemctl daemon-reload

啟動 Java 應(yīng)用服務(wù):

sudo systemctl start java-app.service

啟用服務(wù),使其在系統(tǒng)啟動時自動啟動:

sudo systemctl enable java-app.service

3. 檢查服務(wù)狀態(tài)

你可以使用以下命令查看服務(wù)的狀態(tài):

sudo systemctl status java-app.service

確保 Java 應(yīng)用正在運行并且沒有錯誤。

七、日志管理

為了有效地監(jiān)控 Java 應(yīng)用的運行狀態(tài),建議設(shè)置日志記錄。

1. 配置日志文件

你可以使用 Java 的日志框架(如 Logback 或 Log4j)來配置應(yīng)用日志。確保日志輸出到文件,而不是僅輸出到控制臺。

在 application.properties 或 logback.xml 配置中指定日志文件的路徑。

例如,使用 Logback 配置文件:

<configuration>
    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <file>/var/log/java-app.log</file>
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss} - %msg%n</pattern>
        </encoder>
    </appender>

    <root level="INFO">
        <appender-ref ref="FILE"/>
    </root>
</configuration>

2. 查看應(yīng)用日志

你可以使用 tail 或 journalctl 來查看日志文件:

sudo tail -f /var/log/java-app.log

如果你通過 systemd 啟動應(yīng)用,還可以使用 journalctl 命令來查看應(yīng)用的日志:

sudo journalctl -u java-app.service -f

八、測試部署

  • 在瀏覽器中訪問你的服務(wù)器域名或 IP 地址,確保能正確加載 Java 應(yīng)用。
  • 使用 curl 或 Postman 等工具測試 API 接口,確保后端服務(wù)正常工作。

九、總結(jié)

通過以上步驟,你可以在 Ubuntu 上成功部署 Java 應(yīng)用,使用 Nginx 配置反向代理,確保應(yīng)用能夠高效穩(wěn)定地提供服務(wù)。同時,借助 systemd,你還可以方便地管理應(yīng)用的啟動、停止及日志記錄,確保服務(wù)的高可用性。

以上就是在Ubuntu上部署SpringBoot應(yīng)用的操作步驟的詳細內(nèi)容,更多關(guān)于Ubuntu部署SpringBoot應(yīng)用的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 聊聊Mybatis中sql語句不等于的表示

    聊聊Mybatis中sql語句不等于的表示

    這篇文章主要介紹了Mybatis中sql語句不等于的表示方式,具有很好的參考價值,希望對大家有所幫助。
    2021-07-07
  • springboot注入servlet的方法

    springboot注入servlet的方法

    本篇文章主要介紹了springboot注入servlet的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • SpringBoot高版本修改為低版本時測試類報錯的解決方案

    SpringBoot高版本修改為低版本時測試類報錯的解決方案

    這篇文章主要介紹了SpringBoot高版本修改為低版本時測試類報錯的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Mybatis實現(xiàn)插入數(shù)據(jù)后返回主鍵過程解析

    Mybatis實現(xiàn)插入數(shù)據(jù)后返回主鍵過程解析

    這篇文章主要介紹了Mybatis實現(xiàn)插入數(shù)據(jù)后返回主鍵過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2020-06-06
  • JavaWeb BeanUtils信息類原理詳解

    JavaWeb BeanUtils信息類原理詳解

    這篇文章主要介紹了JavaWeb BeanUtils信息類原理詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2020-02-02
  • 基于Java實現(xiàn)一個復(fù)雜關(guān)系表達式過濾器

    基于Java實現(xiàn)一個復(fù)雜關(guān)系表達式過濾器

    這篇文章主要為大家詳細介紹了如何基于Java實現(xiàn)一個復(fù)雜關(guān)系表達式過濾器。文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2022-07-07
  • Java中List按自定義順序排序的幾種實現(xiàn)過程

    Java中List按自定義順序排序的幾種實現(xiàn)過程

    文章介紹Java中按省份自定義排序的三種方法:Map(高效易維護)、Enum(類型安全可擴展)、List.indexOf(簡潔但效率低),推薦根據(jù)數(shù)據(jù)量和需求選擇,大數(shù)據(jù)量優(yōu)先Map或Enum,小數(shù)據(jù)量可用List.indexOf,強調(diào)代碼可讀性和維護性
    2025-07-07
  • Java的LinkedHashSet源碼深入講解

    Java的LinkedHashSet源碼深入講解

    這篇文章主要介紹了Java的LinkedHashSet源碼深入講解,LinkedHashSet是HashSet的子類,而由于HashSet實現(xiàn)了Set接口,因此LinkedHashSet也間接實現(xiàn)了Set類,LinkedHashSet類屬于java.base模塊,java.util包下,需要的朋友可以參考下
    2023-09-09
  • 解決tk mapper 通用mapper的bug問題

    解決tk mapper 通用mapper的bug問題

    這篇文章主要介紹了解決tk mapper 通用mapper的bug問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • 修改Android應(yīng)用的樣式的一些關(guān)鍵點解析

    修改Android應(yīng)用的樣式的一些關(guān)鍵點解析

    這篇文章主要介紹了修改Android應(yīng)用的樣式的一些關(guān)鍵點,即對影響外觀的theme跟style的相關(guān)修改,需要的朋友可以參考下
    2015-12-12

最新評論

泽普县| 盘山县| 凤山市| 清苑县| 夹江县| 军事| 绥滨县| 林口县| 合阳县| 大石桥市| 阿城市| 随州市| 沂南县| 九江县| 呼图壁县| 馆陶县| 阿勒泰市| 长武县| 平阴县| 乡宁县| 子长县| 广德县| 九龙城区| 平阴县| 唐海县| 泌阳县| 宁陵县| 榆林市| 玛曲县| 阿克苏市| 三都| 靖西县| 卢氏县| 彩票| 宜章县| 柞水县| 大同市| 长寿区| 原平市| 醴陵市| 阿勒泰市|