Add local proxy
This commit is contained in:
@@ -1,6 +1,25 @@
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
# 0. Velocity - Minecraft 代理伺服器(群組架構核心)
|
||||
velocity:
|
||||
image: itzg/bungeecord:latest
|
||||
container_name: velocity_proxy
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- TYPE=VELOCITY
|
||||
- TZ=Asia/Taipei
|
||||
- MEMORY=1G
|
||||
ports:
|
||||
- "1110:25577" # 對外唯一端口
|
||||
volumes:
|
||||
- /docker/minecraft/velocity:/server
|
||||
networks:
|
||||
- minecraft_net
|
||||
# 玩家透過不同網域連線,Velocity 自動路由到對應後端伺服器
|
||||
# parkour.domain.com -> crafty:11110
|
||||
# survival.domain.com -> crafty:11120
|
||||
|
||||
# 1. 遊戲管理中心
|
||||
crafty:
|
||||
container_name: crafty_controller
|
||||
@@ -9,7 +28,7 @@ services:
|
||||
environment:
|
||||
- TZ=Asia/Taipei
|
||||
ports:
|
||||
- "8000:8443" # 管理介面 (HTTPS)
|
||||
- "8000:8443" # 管理介面
|
||||
volumes:
|
||||
- /docker/minecraft/crafty/backups:/var/opt/crafty/backups
|
||||
- /docker/minecraft/crafty/db:/var/opt/crafty/db
|
||||
@@ -27,6 +46,7 @@ services:
|
||||
reservations:
|
||||
memory: 8G # 保證最低 8GB,適合多伺服器同時運行
|
||||
|
||||
|
||||
# 2. 全方位監控儀表板 (Netdata)
|
||||
netdata:
|
||||
image: netdata/netdata:latest
|
||||
@@ -106,23 +126,7 @@ services:
|
||||
# networks:
|
||||
# - minecraft_net
|
||||
|
||||
# 5. Cloudflare Tunnel - 網域穿透 (不需開防火牆)
|
||||
cloudflared:
|
||||
image: cloudflare/cloudflared:latest
|
||||
container_name: cloudflared_minecraft
|
||||
restart: unless-stopped
|
||||
command: tunnel run
|
||||
environment:
|
||||
- TUNNEL_TOKEN=${CLOUDFLARE_TUNNEL_TOKEN} # 需要在 Cloudflare Dashboard 建立 Tunnel 取得
|
||||
networks:
|
||||
- minecraft_net
|
||||
# Cloudflare Tunnel 會自動處理:
|
||||
# - SSL/TLS 加密
|
||||
# - DDoS 防護
|
||||
# - 不需開任何防火牆 port
|
||||
# 設定方式: https://dash.cloudflare.com -> Zero Trust -> Access -> Tunnels
|
||||
|
||||
# 6. Watchtower - 自動更新容器映像檔(可選)
|
||||
# 5. Watchtower - 自動更新容器映像檔(可選)
|
||||
# watchtower:
|
||||
# image: containrrr/watchtower:latest
|
||||
# container_name: watchtower_minecraft
|
||||
|
||||
24
karylab-minecraft/velocity-config.toml
Normal file
24
karylab-minecraft/velocity-config.toml
Normal file
@@ -0,0 +1,24 @@
|
||||
# Velocity 配置檔範例
|
||||
# 啟動容器後會自動生成在 /docker/minecraft/velocity/velocity.toml
|
||||
# 以下是關鍵設定說明
|
||||
|
||||
# 綁定地址和端口
|
||||
bind = "0.0.0.0:25577"
|
||||
|
||||
# 強制主機域名路由(關鍵!)
|
||||
[forced-hosts]
|
||||
"parkour.您的網域.com" = ["parkour"]
|
||||
"survival.您的網域.com" = ["survival"]
|
||||
"lobby.您的網域.com" = ["lobby"]
|
||||
|
||||
# 後端伺服器列表
|
||||
[servers]
|
||||
parkour = "crafty_controller:11110"
|
||||
survival = "crafty_controller:11120"
|
||||
lobby = "crafty_controller:11130"
|
||||
|
||||
# 預設進入的伺服器(玩家直接用IP連線時)
|
||||
try = ["lobby"]
|
||||
|
||||
# 啟用 modern forwarding (讓後端伺服器知道玩家真實IP)
|
||||
player-info-forwarding-mode = "modern"
|
||||
Reference in New Issue
Block a user