Magma is a domain-switching reverse proxy for Minecraft servers.
It functions by reading the server address packet sent by the client during the login process, then switching packets to a number of routes based on this address, as specified in the proxy's config. You can think of Magma as NGINX for Minecraft.
🚧 Warning 🚧
Magma is still very much work in progress and is not production ready! Contributions are very much welcome.
-
debug
: boolean - enable debug logging -
online
: boolean - whether to use online mode -
listener
: map -
# Config file version - do not edit!
version = 1
# Enable debug logging
debug = false
# Enable online mode
online = true
[listener]
# The bind address of the server
bind_address = "0.0.0.0"
# The listening port of the server
port = 25565
# A server proxied by Moss.
[[servers]]
# The domain of the server.
domain = "mc.skzr.dev"
# The forwarding target.
target = "172.18.0.1:34001"
[[servers]]
# A list of domains supported by this server entry.
domains = [
"mc.kaylen.dog",
"play.kaylen.dog"
]
selection_algorithm = "random" # One of "random", "round-robin"
# A list of targets supported by this server entry.
targets = [
"172.18.0.1:34001",
"172.18.0.1:34002"
]
Magma is licensed under the GNU Affero General Public License version 3.0.