Minecraft + Container = Montainer!!!
Minecraft Bedrock Server easily deployed with Docker.
Updating a Minecraft server can be a tedious process. While clients can easily update their game via Microsoft Store or other platforms, server updates require manual download and replacement of files. This can be time-consuming and prone to errors.
Montainer is designed to solve this problem. It is a Minecraft server encapsulated in a Docker container, complete with a web UI console. The repository is managed automatically by web scraping the Mojang website. This allows users to use the :latest
tag and auto-deploying programs like Watchtower to ensure their server is up-to-date with the client, without the need for manual updates.
-
Docker Container: The Minecraft server is encapsulated in a Docker container, making it easy to deploy and manage.
-
Web UI Console: Montainer comes with a web UI console, providing a user-friendly interface for managing your server.
-
Automatic Updates: The repository is updated automatically by web scraping the Mojang website. This means you can always use the
:latest
tag to get the most recent version of the server. You can also use auto-deploying programs like Watchtower to ensure your server is always up-to-date.
Note for this microservice to work behind a subpath, you need to set the SUBPATH environment variable to the subpath you want to use. e.g. SUBPATH=/minecraft
Look at the examples/kubernetes
folder for a sample deployment.
Trust me I learn it the hardway that Game server should not be inside a Kubernetes💀
services:
montainer:
image: ghcr.io/wasinuddy/montainer-stable:latest # Use montainer-preview for Minecraft Snapshot server
ports:
- "8000:8000" # Web UI Console mount to port 8000 TCP
- "19132:19132/udp" # Minecraft Bedrock Server port 19132 UDP
volumes:
- ./worlds:/app/minecraft_server/worlds # Paste your world folder inside ./worlds (ie. ./worlds/Bedrock Level)
- ./configs:/app/configs
restart: unless-stopped