[精讚] [會員登入]
1133

【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

你可能感興趣的文章

【C】〔無條件捨去〕如何忽略float數據 直接儲存成int型態(數據100%不失真) a148: You Cannot Pass?! 解題時所意外研究出來的神奇寫法,懂了原理之後要自行改寫成四捨五入或無條件進位應該就簡單了吧!

【C++】使用struct array和一維int array模擬二維int array 主要是因為用sort去排序int array的二維陣列小編懶得研究,於是就研究了一種維持一維陣列但是有二維陣列效果的程式,小編就廢~~

【Java】(Project Valhalla)關於Java未來重大的變革 讓 Java 再次偉大!Make Java Great Again!

【Wicket】[Cookie]如何讀取和設定客戶端的Cookie 對於某些參數需要給予使用者,我們可以使用 Cookie 來讓客戶端記著,之後再跟伺服器裡的比對來達到驗證的目的

【教程】(進階版)如何用Sigil製作一本高質量的epub 下載好了Sigil之後除了直接把文字貼進去以外,還有:變更字型、著色、導入CSS……等等功能,不知道你有沒有發現呢?

【Discord bot】(ERROR)await self.bot.wait_for() 大坑 今天真的是採到大坑,只找到解決方法,具體原因不明

隨機好文

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

高捷少女:耐耐的新年驚喜① 耐耐拿出手機。「我回來囉。」她說。幾分鐘後,木門緩緩打開。當它完全開啟的那一刻,小穹手中的包包掉到地上;艾米揉揉雙眼,確定自己看見的景象;婕兒的三魂七魄飛到了九霄雲外。

高捷少女:耐耐的新年驚喜② 「各位,我跟爸媽聊完了……」耐耐走進客廳,看到大家在看自己的相簿,臉蛋立刻紅了。「哇啊啊,不要看那個!」她三步併作兩步地走向少女們,將相簿拿走。「為什麼啊?小時候的耐耐很可愛啊。」婕兒不解地說。

婕兒──她的青春③ 「墮天使穹音!」婕兒拿出平底鍋。 耐耐憋著笑搖搖頭。「不是喔,她是我的……我的……」 「替身。」小穹小聲提醒忘記台詞的耐耐。

艾米莉亞和高捷戀旅3① 「既然艾米莉亞小姐也來了,就把那個拿出來吧。」美麗島捷運商店的負責人說完,一名工作人員推著一個大箱子進入辦公室。他將箱子打開,將裡面的東西抬出來。艾米張大嘴巴