Proxy your local Minecraft server with a public server using your domain. It's not a Bungeecord or a plugin.
Use frp to connect the local server to the container's port with the public server. Then use mc-router to change the port to connect by domain.
flowchart LR
subgraph Public server
subgraph Container
subgraph frps
frps-25566[:25566]
frps-25567[:25567]
end
mc-router <-- example.com --> frps-25566
mc-router <-- sub.example.com --> frps-25567
end
end
subgraph Local server 2
frps-25567 <---> frpc-2
minecraft-2[Minecraft server] <--> frpc-2[frpc]
end
subgraph Local server 1
minecraft-1[Minecraft server] <--> frpc-1[frpc]
frps-25566 <---> frpc-1
end
minecraft-client[Minecraft client] <-- $domain:25565 --> mc-router
- Clone this repository.
- Create
.env
. - Run
docker compose up -d
.
- Download from releases.
- Extract frpc from a downloaded file.
- Create
frpc.ini
- Run
frpc -c frpc.ini
.
※ The public server address is 203.0.113.0
.
ROUTER_MAPPING=example.com=frp:25566,sub.example.com=frp:25567
※ frp
is the address that means frps container.
[common]
server_addr = 203.0.113.0
server_port = 7000
[minecraft]
type = tcp
local_port = 25565
remote_port = 25566
[common]
server_addr = 203.0.113.0
server_port = 7000
[minecraft]
type = tcp
local_port = 25565
remote_port = 25567
Default: 0.60.0
frps version to use.
Default: (empty)
frps command options. For example, you can set a token.
Default: 7000
Require
Mapping of address and port. For example: example.com=frp:25565