Docker Image
概述
Fusion專用伺服器Docker映像檔範例 是一個指令碼及檔案的集,其展示一個 Fusion專用伺服器 如何被放入一個Docker Container
之中,並且在一個Docker
環境中執行。
Docker
平台是一個廣為人知的虛擬化系統,其圍繞著容器的概念來組建,容器是運行特定應用程式的集的「虛擬機器」的群,其被適當地設定及封裝,能夠自由被建立及銷毀,而無需擔心流程隔離和主機端機器正在使用的操作系統。
當處理Dedicated Servers
的建立時,容器的使用是最好的解決方案之一,並且大多數遊戲伺服器主機端提供者使用Docker
來準確地達成它們的可擴縮性。
下載
版本 | 發布日期 | 下載 | ||
---|---|---|---|---|
1.0.1 | 2023年4月13日 | Fusion專用伺服器Docker映像檔1.0.1組建177 |
檔案說明
README.md
:含有如何組建及使用範例的一般性資訊。Dockerfile
:容器說明,其為組建Docker Image
時由Docker
使用的一個設置檔案。Fusion Game Server
將由fusion
使用者從Linux
容器來執行。更多關於Dockerfile
的資訊在這裡。bin/entrypoint.sh
:將執行Fusion Game Server
的指令碼,並且選擇性地將傳送到容器的引數解析為伺服器二進位檔案。run_server.sh
:以選擇性引數來運行容器的方法的參照指令碼。
運行方法
這個範例應該只用作為參照,並且可能需要一些修改以適配更複雜的情況。
它不會展示如何精心設計Game Servers
,只展示如何使用Docker Container
來運行它。
設定Docker
- 前往docker.com/get-started。
- 安裝並設定您的Docker服務。
讓Fusion伺服器準備好使用Docker映像檔
- 基於Fusion專用伺服器範例。
- 組建一個
Dedicated Server
:- 設定
Linux
為Target Platform
以及x86_64
為Architecture
。 - 檢查
Server Build
旗標。 - 設定可執行的名稱到
server.x86_64
。
- 設定
- 複製所有組建檔案到
bin
資料夾。
建立Fusion伺服器Docker映像檔
- 在目前的資料夾上開啟一個終端機。
- 確保
Docker
服務正在您的系統中運行。 - 運行:
docker build -t <your_custom_image_name> .
- 示例:
docker build -t fusion-dedicatedserver .
- 示例:
- 一個附有名稱
fusion-dedicatedserver
的新的Docker Image
,將在您的本機存放庫上建立。
運行Fusion伺服器為一個Docker容器
- 在目前的資料夾上開啟一個終端機。
- 確保
Docker
服務正在您的系統中運行。 - 運行:
docker run -d -p <host_custom_port>:27015/udp <your_custom_image_name>
- 示例:
docker run -d -p 27015:27015/udp fusion-dedicatedserver
- 預設下,Fusion專用伺服器將繫結到埠
27015
,並且這個埠已經由Docker映像檔來公開(檢查Dockerfile
)。運行上述指令碼,該埠也將被映射到主機端27015
。 - 運行一個已中斷連結的容器(
-d
引數),將使其獨立於目前的終端機來運行。
- 示例:
選擇性啟動引數
Fusion伺服器Docker映像檔已準備好接受與獨立組建接受的引數相同的引數。然而,它們有不同的引數名稱,這是基於entrypoint.sh
指令碼讀取它們的方式。
檢查下列的引數清單,以取得更多資訊:
-s <custom_session_name>
:使用一個自訂階段ID名稱。預設:隨機GUID階段名稱-r <custom_region>
:連線伺服器到一個自訂地區。預設:最佳地區-l <custom_lobby>
:加入一個自訂大廳。預設:加入預設ClientServer
大廳。-i <custom_public_ip>
:設定伺服器的自訂公共IP。預設:空,伺服器將使用STUN服務來找到它的公共IP。-p <custom_public_port>
:設定伺服器的自訂公共埠。預設:空,伺服器將使用STUN服務來找到它的公共埠。
檢查run_server.sh
指令碼,以取得使用選擇性引數來啟動一個新的Fusion伺服器容器的更結構化的方式。示例:
sh
docker run -d -p 27015:27015/udp fusion-dedicatedserver -s my_session -r eu -l my_lobby
叫用這個將在地區eu
上使用階段名稱my_session
來啟動一個Fusion Game Server
,並且階段將列於大廳my_lobby
清單之上。