LV. 43
GP 0

【心得】使用 Docker Container 架設伺服器

樓主 オレのミオ mingyc
GP13 BP-
本篇文章假設讀者已經解決下列問題:
1. 獲得固定 IP
2. 知道如何開放機器的 port (預設使用 8211 UDP)
3. 知道如何安裝和使用 docker

已測試過可以使用的 image:


步驟:
1. mkdir ~/palworld-server && cd ~/palworld-server
2. mkdir data
3. sudo chown -R 1000:1000 ./data
4. touch docker-compose.yaml

在 docker-compose.yaml 中加入以下內容

services:
    palworld-server:
        image: "kagurazakanyaa/palworld"
        container_name: "palworld-server"
        ports:
            - "8211:8211/udp"
        volumes:
            - "~/palworld-server/data:/opt/palworld/Pal/Saved"
        environment:
            - SERVER_NAME=<填入伺服器名字>
            - SERVER_DESC=<填入伺服器介紹>
            - ADMIN_PASSWORD=""
            - SERVER_PASSWORD=""
            - MAX_PLAYERS=<1~32>
        restart: unless-stopped

5. docker compose up

到此為止伺服器應該已經成功啟動,接著照下面的官方教學在遊戲選擇伺服器的列表最下面輸入 <你的IP>:8211 應該就可以連上

注意根據上面的FAQ,目前的版本並不支援設定server密碼。如果要密碼的話要改成 community server (就是會出現在公開列表上)

伺服器存檔在 host machine 的 ~/palworld-server/data ,如果要更改設定的話,先 ctrl-C 停止 container,再修改 ~/palworld-server/data/Config/LinuxServer/PalWorldSettings.ini

13
-
LV. 42
GP 320
2 樓 miniChuang eric71331
GP0 BP-
四人遊玩檔案繼, 開過的地圖迷霧恢復與 20帕魯終端機

開過的地圖迷霧恢復與 20帕魯終端機
1. 關閉伺服器

2. 開一個個人世界, 接著將伺服器的世界子ID資料夾完整複製
"C:Users"你的windows登錄使用者帳號"AppDataLocalPalSavedSaveGames世界ID"

3. 回到遊戲標題畫面, 選擇個人遊戲, 選擇伺服器的世界, 左下角選擇自訂難度, 修改最下面的終端機帕魯數量

4. 將這個世界子ID底下的 "WorldOption.sav" 覆蓋回伺服器的 "WorldOption.sav"

5. 啟動伺服器

四人遊玩檔案繼成
1. 關閉伺服器 "docker stop 容器名稱"

原房主資料請見末尾
2.
到: C:Users"你的windows登錄使用者帳號"AppDataLocalPalSaved

3.
將裡面整包複製後透過 WinSCP 等FTP工具(方便)丟到 "cd /home/palword-server/data" 資料夾下。

4.
到: "/home/palword-server/data/Config/" 資料夾中,將 "WindowServer" 資料夾更名為 "LinuxServer"。

5. 啟動伺服器
在 SSH cmd 那邊輸入:"docker compose up -d" 開啟伺服器

6.登入遊戲創一隻角色

7. 關閉伺服器 "docker stop 容器名稱"

8.修改世界子ID
回到:"/home/palword-server/data/SaveGames/" 資料夾下,
比對:"/home/palword-server/data/SaveGames/0/" 中的世界子ID
修改:"/home/palword-server/data/SaveGames/舊世界ID/" 中的世界子ID

9.修改世界ID
回到:"/home/palword-server/data/SaveGames/" 資料夾下,
刪除:"/home/palword-server/data/SaveGames/0" 這個資料夾
修改:"/home/palword-server/data/SaveGames/舊世界ID"  的 "舊世界ID" 部分為 "0"

10. 啟動伺服器  "docker compose up -d"

完成。

至於能不能省去 6, 7 步驟,直接修改後面的部分,
我自己試了幾次感覺要先啟動一次伺服器,
讓他產生一次世界子ID編號才能修改,不是很確定有省略嘗試成功的歡迎分享方法呦。




(除了原房主 , 原房主資料請見末尾
0
-
未登入的勇者,要加入 3 樓的討論嗎?
板務人員:(代管中)歡迎申請板主