MCTL is a python tool for automating and reducing the operational cost of running Minecraft servers. MCTL provides a number of features:
- Management (starting and stopping) of one or more servers.
- Plugin management (building, updating, and snapshotting).
- Fake server when the main server is offline, showing a status message.
- All of this wrapped up in an easy to use CLI.
$ sudo dnf copr enable jgeboski/mctl
$ sudo dnf install mctl
$ mkdir -p ~/.mctl
$ cp /usr/share/doc/mctl/config.yml ~/.mctl
$ mkdir -p ~/.mctl ~/bin
$ git clone https://github.com/jgeboski/mctl.git ~/.mctl/source
$ ln -sf ~/.mctl/source/mctl.py ~/bin/mctl
$ chmod +x ~/bin/mctl
$ cp ~/.mctl/source/config.yml ~/.mctl
$ echo PATH=\"\$PATH:\$HOME/bin\" >> ~/.bashrc
$ . ~/.bashrc
Make sure to configure MCTL in ~/.mctl/config.yml
before proceeding!
$ mctl --help
$ mctl <command> --help
$ mctl servers
$ mctl packages
$ mctl start -s <server name>
$ mctl stop -s <server name> -m "<Reason for stopping>"
$ mctl restart -s <server name> -m "<Reason for restarting (ex: updating plugins)>"
$ mctl build --all-packages
$ mctl upgrade -s <server name> --all-packages
$ mctl restart -s <server name> -m "Updating server packages"
$ mctl stop -s <server name> -m "<Reason for stopping>" -k
$ mctl start -s <server name> -m "<Reason for the server being down>" -k
$ mctl stop -s <server name>
$ mctl -d <command>