[精讚] [會員登入]
1002

【Docker&Wildfly】(bitnami/wildfly)如何從零開始創建網頁伺服器

使用他人的 docker image 來架設我們的 wildfly web server

分享此文連結 //n.sfs.tw/16411

分享連結 【Docker&Wildfly】(bitnami/wildfly)如何從零開始創建網頁伺服器@小編過路君子
(文章歡迎轉載,務必尊重版權註明連結來源)
2024-05-22 03:57:37 最後編修
2024-05-22 03:19:03 By 過路君子
 

大家好,這裡是還在堅持使用 Java 的小編過路君子

距離上一篇純 Wildfly 文章已經過去兩年了,至今小編仍未投入 Apache 的懷抱。

 

 

為什麼開頭要強調純 Wildfly 文章呢?這是因為在【Wildfly/jBoss】[Linux] 如何從無到有建立Wildfly網頁伺服器這篇文章之後。

有很長一段時間小編都是 Wildfly 和 Wicket 一起混寫,基本上沒有再為 Wildfly 單獨撰寫一篇文章。

而今天,小編久違的回來幫 Wildfly 來寫一篇有關設定的文章了。

 

照慣例小編在這裡先丟出軟體版本的一覽表:

軟體名稱 版本
Wildfly 32.0.0.Final
Docker 25.0.4
Docker Compose v2.24.7

真的很難想像,小編上一篇文章的 Wildfly 版本還是 24.0.1.Final 呢。

 

Step 1. 創建新目錄

拿來放 docker-compose.yml 和 Wildfly 資料的地方。

cd ~
mkdir -p ./wildfly/storage
cd ./wildfly
touch docker-compose.yml

(所有圖片點擊都可以放大、變高清)

 

Step 2. 填入設定

打開 docker-compose.yml 並將以下內容貼入:

version: "3.8"

services:
    wildfly:
        image: bitnami/wildfly:32
        volumes:
            - ./storage:/bitnami/wildfly
        ports:
            - 8080:8080
            - 9990:9990
        environment:
            - WILDFLY_USERNAME=username
            - WILDFLY_PASSWORD=password
            - WILDFLY_MANAGEMENT_LISTEN_ADDRESS=0.0.0.0
        container_name: wildfly

管理頁面(9990埠)預設是只接受本機連線的,上面小編調整將其向任意 IP 開放連線。

使用這帳號密碼記得設定強一點,免得過幾天網頁給人劫持去了。

 

Step 3. 啟動

docker-compose up -d

docker compose up -d

基本上只要看到管理介面有成功開始聆聽就沒問題了。

 

如果在啟動的時候遇到以下的錯誤:

java.lang.IllegalStateException: WFLYSRV0124: Could not create server data directory: /bitnami/wildfly/standalone/data
     at org.jboss.as.server@24.0.0.Final//org.jboss.as.server.ServerEnvironment.<init>(ServerEnvironment.java:432)
     at org.jboss.as.server@24.0.0.Final//org.jboss.as.server.Main.determineEnvironment(Main.java:414)
     at org.jboss.as.server@24.0.0.Final//org.jboss.as.server.Main.main(Main.java:80)
     at org.jboss.modules.Module.run(Module.java:345)
     at org.jboss.modules.Module.run(Module.java:313)
     at org.jboss.modules.Main.main(Main.java:603)
18:40:37,650 FATAL [org.jboss.as.server] (main) WFLYSRV0239: Aborting with exit code 1

執行以下指令並再次啟動就可以了:

chmod 777 ./storage

 

Step 4. Link Start

打開瀏覽器並連線至 8080 埠就可以看到我們的 Wildfly 被成功啟動了喔!

http://your-ip:8080

順帶一提,要到管理頁面的話將上方的 8080 改為 9990 即可。

 

 

 

後記

之前都是拿 Wildfly 做網頁伺服器而已,這次小編應該會將其改造成 rest server 來玩玩。

因為用其他協議來傳輸圖片等等的資源太容易被防火牆攔下來,用 rest server 基本上就能穿透大部分的防火牆了,當然某些高科技產業公司的防火牆除外。

END

你可能感興趣的文章

【Wicket】[nonce]如何導入css以及javascript 如果只是用一般的 HTML link 或是 script 標籤來寫,會被 CSP 擋住,禁止加載資源,那我們除了關閉 CSP 以外還有沒有辦法來解決呢?

【JDA/discord bot】刪除事件或slash(斜槓)指令的reply訊息 如何正確的等待 Async 的結束,在進行接下來的刪除訊息動作

【JAVA】[java.lang.Class]如何不透過new來實體化class 在某些極端狀態下,我們沒有辦法直接將實體化後的 Object 傳入函數內,只能採用傳入 Class 在實體化成物件這種極端的方式來進行

【C++】一些好用的C++小功能 —— 壹 不太重要,但是可以增加程式質量以及可以讓程式看起來好像很厲害

【SeaChest & Synology】512e(Advanced Format / AF) 轉換至 4Kn 好不容易入手了一顆硬碟,但是卻無法使用,除了賣掉還有更好的方法嗎?

【Maven】如何開始撰寫 Minecraft PaperMC server插件 萬事起頭難,要開始寫一個插件最難的一步就是要怎麼開始寫

隨機好文

【手遊介紹】小品手遊─寶箱是我的!(SUMMONER'S GREED) 輕鬆無腦的塔防遊戲,殺時間本小編推薦的遊戲之一

高捷少女:小穹與果仁巧克力㊤ 阿敏突然輕笑一聲,從櫃臺拿來一個塑膠餐盒,打開給大家看。「這是小穹烤的餅乾,妳們吃吃看就知道她為什麼不想講了。」小穹變得緊張起來。「阿敏,妳怎麼還留著呀?」艾米莉亞、婕兒與耐耐各自拿了一塊,把夾著奶油

高捷少女:地下城的探險少女⑤ 小穹寫好後,耐耐看了一遍。「我想我應該辦得到。」她說完跪坐在地上,然後把古箏安放在大腿上,並將樂譜放在前面的地板。「要開始囉。」耐耐閉上眼睛,深呼吸一口氣,小穹等人在一旁看著她,心中暗自替她打氣。

高捷少女:購票大作戰(終) 完了。 這下真的完了! 艾米腦內所有的思考中樞,同時發出了淒厲的吶喊。完蛋啦!這下真的被揭穿了啦!! 「那……那是因為……」艾米結結巴巴的說:「因為……

高捷少女:美麗島的守護者(終) 「我是她的師娘,妳一定就是艾米莉亞吧?小雅昨晚有跟我說到您。」「師娘?」艾米疑惑不解。