https://github.com/dirien/minectl
minectl 🗺 is a cli for creating Minecraft server on different cloud provider.
https://github.com/dirien/minectl
azure civo digitalocean equinix fabricmc gce golang hacktoberfest hetzner hetzner-cloud minecraft oracle-cloud-infrastructure ovh ovhcloud scaleway spigotmc vultr
Last synced: 2 months ago
JSON representation
minectl 🗺 is a cli for creating Minecraft server on different cloud provider.
- Host: GitHub
- URL: https://github.com/dirien/minectl
- Owner: dirien
- License: apache-2.0
- Created: 2021-07-02T16:52:02.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2025-03-24T19:35:42.000Z (11 months ago)
- Last Synced: 2025-03-27T07:46:04.030Z (11 months ago)
- Topics: azure, civo, digitalocean, equinix, fabricmc, gce, golang, hacktoberfest, hetzner, hetzner-cloud, minecraft, oracle-cloud-infrastructure, ovh, ovhcloud, scaleway, spigotmc, vultr
- Language: Go
- Homepage:
- Size: 22.1 MB
- Stars: 172
- Watchers: 5
- Forks: 9
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
- starred - dirien/minectl - minectl 🗺 is a cli for creating Minecraft server on different cloud provider. (Go)
README
## New - 1.21.11 support
`minectl 🗺`️️ supports the `Minecraft 1.21.11` version

# `minectl 🗺`




















[](https://pkg.go.dev/github.com/dirien/minectl)
[](https://goreportcard.com/report/github.com/dirien/minectl)


[](https://sonarcloud.io/summary/new_code?id=dirien_minectl)
[](https://api.securityscorecards.dev/projects/github.com/dirien/minectl)
[](https://bestpractices.coreinfrastructure.org/projects/5238)

[](https://artifacthub.io/packages/search?repo=minectl)
`minectl 🗺`️️ is a CLI for creating Minecraft servers on different cloud providers.
It is a private side project of me, to learn more about Go, CLI and multi-cloud environments.
## Table of Contents
- [Supported Cloud Providers](#supported-cloud-providers)
- [Quick Start](#quick-start)
- [Documentation](#documentation)
- [Getting Started Guides](#getting-started-guides)
- [Known Limitations](#known-limitations)
- [Contributing](#contributing)
- [Roadmap](#roadmap)
- [Libraries & Tools](#libraries--tools)
- [Legal Disclaimer](#legal-disclaimer)
## Supported Cloud Providers
| Provider | Website |
|----------|---------|
| Civo | https://www.civo.com/ |
| Scaleway | https://www.scaleway.com |
| DigitalOcean | https://www.digitalocean.com/ |
| Hetzner | https://www.hetzner.com/ |
| Akamai Connected Cloud | https://www.linode.com/ |
| OVHCloud | https://www.ovh.com/ |
| Google Compute Engine (GCE) | https://cloud.google.com/compute |
| Azure | https://azure.microsoft.com/en-us/ |
| Oracle Cloud Infrastructure | https://www.oracle.com/cloud/ |
| Amazon AWS | https://aws.amazon.com/ |
| VEXXHOST | https://vexxhost.com/ |
| Multipass | https://multipass.run/ |
| Exoscale | https://www.exoscale.com/ |
| Fuga Cloud | https://fuga.cloud/ |
## Quick Start
### Installation
#### Linux/macOS (Installation Script)
```bash
curl -sLS https://get.minectl.dev | sudo sh
```
or without `sudo`:
```bash
curl -sLS https://get.minectl.dev | sh
```
#### macOS (Homebrew)
```bash
brew tap dirien/homebrew-dirien
brew install minectl
```
#### Windows (PowerShell)
```powershell
# Create directory
New-Item -Path "$HOME/minectl/cli" -Type Directory
# Download file
Start-BitsTransfer -Source https://github.com/dirien/minectl/releases/download/v0.7.0/minectl_0.7.0_windows_amd64.zip -Destination "$HOME/minectl/cli/."
# Uncompress zip file
Expand-Archive $HOME/minectl/cli/*.zip -DestinationPath $HOME/minectl/cli/.
# Add to Windows Environment Variables
[Environment]::SetEnvironmentVariable("Path",$($env:Path + ";$Home\minectl\cli"),'User')
```
#### From Source
```bash
git clone https://github.com/dirien/minectl
cd minectl
make build
```
### Create Your First Server
1. **Set up authentication** for your cloud provider ([see docs](docs/authentication.md))
2. **Create a config file** using the wizard:
```bash
minectl wizard
```
3. **Create the server**:
```bash
minectl create --filename server.yaml
```
4. **Connect and play!**
[](https://asciinema.org/a/439572)
## Documentation
| Document | Description |
|----------|-------------|
| [Architecture](docs/architecture.md) | High-level architectural overview |
| [Authentication](docs/authentication.md) | Cloud provider credentials setup |
| [Configuration](docs/configuration.md) | Server and proxy configuration reference |
| [CLI Reference](docs/cli-reference.md) | All commands and flags |
| [Editions](docs/editions.md) | Supported Minecraft server and proxy editions |
| [Features](docs/features.md) | Monitoring, volumes, security, and more |
## Getting Started Guides
- [Civo Java Edition](docs/getting-started-civo.md)
- [Civo Bedrock Edition](docs/getting-started-civo-bedrock.md)
- [Scaleway Java Edition](docs/getting-started-scaleway.md)
- [GCE Edition](docs/getting-started-gce.md)
- [Exoscale Edition](docs/getting-started-exoscale.md)
- [Multi-cloud server monitoring](docs/multi-server-monitoring-civo.md)
- [LuckyBlocks on Scaleway](docs/running-minecraft-luckyblocks-budget-scaleway.md)
- [PaperMC SkyBlock on Hetzner](docs/skyblock-papermc-hetzner.md)
## Known Limitations
`minectl 🗺` is still under development. There will be the possibility for breaking changes.
## Contributing
Feel free to join! See our [contribution guidelines](CONTRIBUTING.md).
**License:** Apache License, Version 2.0
## Roadmap
- [x] Support Bedrock edition [#10](https://github.com/dirien/minectl/issues/10)
- [x] Add monitoring capabilities [#21](https://github.com/dirien/minectl/issues/21)
- [x] List Minecraft Server [#11](https://github.com/dirien/minectl/issues/11)
- [x] Update Minecraft Server [#12](https://github.com/dirien/minectl/issues/12)
- [x] Hetzner support [#26](https://github.com/dirien/minectl/issues/26)
- [x] Linode support [#31](https://github.com/dirien/minectl/issues/31)
- [x] OVHCloud support [#43](https://github.com/dirien/minectl/issues/43)
- [x] GCE support [#55](https://github.com/dirien/minectl/issues/55)
- [x] Modded editions [#20](https://github.com/dirien/minectl/issues/20)
- [x] Vultr support [#90](https://github.com/dirien/minectl/issues/90)
- [x] Proxy servers (BungeeCord/Waterfall) [#95](https://github.com/dirien/minectl/issues/95)
- [x] Azure support [#56](https://github.com/dirien/minectl/issues/56)
- [x] Oracle/OCI support [#107](https://github.com/dirien/minectl/issues/107)
- [x] AWS support [#210](https://github.com/dirien/minectl/pull/210)
- [ ] Much more to come...
## Libraries & Tools
Click to expand
- https://github.com/fatih/color
- https://github.com/melbahja/goph
- https://github.com/spf13/cobra
- https://github.com/goreleaser
- https://github.com/civo/civogo
- https://github.com/digitalocean/godo
- https://github.com/scaleway/scaleway-sdk-go
- https://github.com/linode/linodego
- https://github.com/hetznercloud/hcloud-go
- https://github.com/olekukonko/tablewriter
- https://github.com/sethvargo/go-password
- https://github.com/ovh/go-ovh
- https://github.com/dirien/ovh-go-sdk
- https://github.com/hashicorp/go-retryablehttp
- https://github.com/googleapis/google-api-go-client
- https://github.com/Masterminds/sprig
- https://github.com/Tnze/go-mc
- https://github.com/c-bata/go-prompt
- https://github.com/vultr/govultr
- https://github.com/Azure/azure-sdk-for-go
- https://github.com/blang/semver
- https://github.com/tcnksm/go-latest
- https://github.com/uber-go/zap
- https://github.com/oracle/oci-go-sdk
- https://github.com/AlecAivazis/survey
- https://github.com/aws/aws-sdk-go
- https://github.com/gophercloud/gophercloud
- https://github.com/exoscale/egoscale
## Legal Disclaimer
This project is not affiliated with Mojang Studios, XBox Game Studios, Double Eleven or the Minecraft brand.
"Minecraft" is a trademark of Mojang Synergies AB.
Other trademarks referenced herein are property of their respective owners.
## Stargazers over time
[](https://starchart.cc/dirien/minectl)