Automate your Minecraft Network infrastructure with ease! This project configures and provisions everything a Minecraft Network needs, from firewall rules to databases and even the Pterodactyl game panel. Using Vagrant, Terraform, and Ansible, you can effortlessly manage your Minecraft network, providing a seamless and reliable gaming experience for players.
-
Ansible - Version 8.2.0 or higher
-
Python - Version 3.9 or higher
-
Terraform - Version 1.5.4 or higher
-
Vagrant - Version 2.3.7 or higher
-
VirtualBox - Version 7.0.10 or higher
-
ansible/
: Contains the Ansible-related files, including the inventory and playbook. -
functions/
: Contains the shell function files for Vagrant, Terraform, and Ansible actions. -
terraform/
: Contains the Terraform configuration files. -
vagrant/
: Contains the Vagrant configuration files. -
deploy.sh
: The main script/wrapper for all functions. -
LICENSE
: The project's license file. -
README.md
: This file provides an overview of the project. -
TODO.md
: This file tracks pending and completed tasks.
- Ensure you have the prerequisites installed.
- Clone the repository
git clone https://github.com/dmaax/mc-devops.git
cd mc-devops
- Run the deployment script with appropriate arguments to manage your Minecraft infrastructure. For example:
To start Vagrant VM:
./deploy.sh vagrant start
To halt Vagrant VM:
./deploy.sh vagrant halt
To run Terraform initialization:
./deploy.sh terraform init
To apply Terraform configuration and create infrastructure:
./deploy.sh terraform apply
To run the Ansible playbook:
./deploy.sh ansible run development.ini everything-playbook.yml
For more examples please refer to the show_usage
function in deploy.sh
.
This project is licensed under the MIT License.