This is a work in progress project for personal Minecraft servers.
Azure Minecraft is a project that aims to provide a deployment template for hosting your own Minecraft server on Azure. It also includes a management bot for Discord, allowing you to easily manage and interact with your Minecraft server.
- Supports Minecraft Java Edition and Minecraft Bedrock Edition
- Ships with a Discord bot and web map
- Scalable through Container Instances
- Cost effective (only pay for it while its running)
- Secure by default (Managed Identities over secrets)
- Operational logs and back-ups enabled
- Highly flexible & easy deployment
Please note that this project is currently a work in progress and may not be suitable for production environments.
It is recommended to review the Terms of Use of your Azure Subscription before deploying this project.
- Azure CLI
- An Azure Subscription
- A Discord app registration
- A Docker Hub account
- Log into the Azure CLI (
az login) and select your preferred subscription - Create a new resource group (
az group create -n <<NAME, e.g. rg-azmc>> -l <<LOCATION, e.g. westeurope>>) - Deploy the Bicep template with the required parameters:
az deployment group create \ --resource-group <<RESOURCE_GROUP_NAME>> \ --template-file infra/main.bicep \ --parameters acceptEula=true \ --parameters serverMemorySize=3 \ --parameters serverType='PAPER' \ --parameters isBedrockSupportEnabled=false \ --parameters deployDashboard=true \ --parameters deployRenderer=false \ --parameters rendererSchedule='weekly' \ --parameters mapHostName='' \ --parameters deployDiscordBot=false \ --parameters discordBotPublicKey='' \ --parameters discordBotToken='' \ --parameters deployResources=false \ --parameters resourcePackName='' \ --parameters deployAutoShutdown=true \ --parameters dockerHubUsername='' \ --parameters dockerHubPassword=''
- Start the Minecraft server container instance
Contributions are welcome! If you have any ideas, suggestions, or bug reports, please open an issue or submit a pull request on the project's GitHub repository.
This project is licensed under the Apache License.
