Minecraft Java proxy · Docker
Create a proxy Compose file
Choose the proxy runtime, downloads, plugins, and operational settings. The generated Compose file remains importable and ready to extend.
Proxy runbooks
Build the complete network
Continue from the generated Compose file to forwarding, backend isolation, troubleshooting, and Bedrock crossplay.
Set up Velocity and Paper with Docker Compose
Connect your proxy and server while keeping Paper ports isolated from the internet.
Configure Velocity modern forwarding with Paper
Match forwarding settings, protect the shared secret, and block direct backend access.
Velocity cannot reach Paper: check the Docker connection
Check container state, the shared network, service name, and backend port.
Set up Geyser and Floodgate on Velocity with Docker
Install Geyser on the proxy and check UDP port 19132 and Bedrock player authentication.
What do I do with the generated file? +
- 1Configure every backend server first, including offline mode, player forwarding, and firewall isolation.
- 2Save the generated file as compose.yml in a new folder.
- 3Keep /server persistent and add your proxy configuration through a bind mount to /config when the generated defaults are not sufficient.
- 4Allow 25565/tcp through Docker, the host firewall, and your provider firewall. Do not publish backend ports to the internet.
- 5Start the proxy with docker compose up -d and inspect startup, downloads, config sync, and the healthcheck with docker compose logs -f.
Connect the proxy and Minecraft servers securely
The proxy accepts player connections and sends them to your Minecraft servers. Configure the same forwarding method in the proxy and on the destination servers.
Players must not be able to reach the destination servers directly from the internet. Allow their ports only from the proxy, for example through a private Docker network and firewall rules.
Define which hostname and port lead to each server in config.yml or velocity.toml. The Docker image handles installing and starting the proxy.