{"id":18843879,"url":"https://github.com/jameslaverack/kubernetes-minecraft-operator","last_synced_at":"2026-01-12T06:33:31.989Z","repository":{"id":36982169,"uuid":"451029330","full_name":"JamesLaverack/kubernetes-minecraft-operator","owner":"JamesLaverack","description":"A Kubernetes operator for Minecraft Java Edition servers","archived":false,"fork":false,"pushed_at":"2023-03-06T23:06:52.000Z","size":460,"stargazers_count":32,"open_issues_count":20,"forks_count":9,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-06-21T09:02:44.407Z","etag":null,"topics":["kubernetes","minecraft","operators"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JamesLaverack.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-01-23T07:03:30.000Z","updated_at":"2025-05-31T17:58:55.000Z","dependencies_parsed_at":"2024-06-19T04:12:24.669Z","dependency_job_id":"39f0d2d2-4453-4a9c-9a33-543b3a7f5aa1","html_url":"https://github.com/JamesLaverack/kubernetes-minecraft-operator","commit_stats":{"total_commits":212,"total_committers":4,"mean_commits":53.0,"dds":0.4292452830188679,"last_synced_commit":"d53baa70a082d628b00e8bf45f782201e23ab762"},"previous_names":["jameslaverack/minecraft-operator"],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/JamesLaverack/kubernetes-minecraft-operator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JamesLaverack%2Fkubernetes-minecraft-operator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JamesLaverack%2Fkubernetes-minecraft-operator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JamesLaverack%2Fkubernetes-minecraft-operator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JamesLaverack%2Fkubernetes-minecraft-operator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JamesLaverack","download_url":"https://codeload.github.com/JamesLaverack/kubernetes-minecraft-operator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JamesLaverack%2Fkubernetes-minecraft-operator/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261095303,"owners_count":23108782,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["kubernetes","minecraft","operators"],"created_at":"2024-11-08T02:59:09.988Z","updated_at":"2026-01-12T06:33:31.943Z","avatar_url":"https://github.com/JamesLaverack.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kubernetes Minecraft Operator\n\nAn unoffical Kubernetes [operator](https://kubernetes.io/docs/concepts/extend-kubernetes/operator/) for dedicated servers of the\nvideo game [Minecraft Java Edition](https://www.minecraft.net/en-us/store/minecraft-java-edition).\nThis allows you to administer and configure a Minecraft server solely using the Kubernetes API — no remote shell, SFTP,\nor graphical admin interfaces are required.\n\nℹ️ This is **not** an offical Minecraft project. It is **not** approved by or associated with Mojang.\n\n🚧 This is **alpha-grade** software. No guarantee is provided (see the [license](LICENSE)), and users are\nresponsible for the security and data-integrity of their own servers. The API surface is subject to change without notice.\n\n## Installing\n\nYou can install the latest version of the operator by running this command with your cluster configured in `kubectl`.\n\n```bash\ncurl -L https://github.com/JamesLaverack/kubernetes-minecraft-operator/releases/latest/download/operator.yaml | kubectl apply -f -\n```\n\n### Tags\n\nThe command above will install the operator at a specific release. You can also change the image tag to either `latest`\nto always get the latest published release or `edge` to get the latest build of the main branch. However, doing so won't\nget you YAML updates (e.g., adding new permissions or custom resource definition updates). (Also the `edge` tag\npublishes *before* tests are run, so it comes with even fewer guarantees than normal.)\n\n### Verify\n\nYou can verify everything is working by looking for the operator Pod in the `kubernetes-minecraft-operator-system` namespace, e.g.:\n\n```bash\nkubectl --namespace kubernetes-minecraft-operator-system get pod\n```\n\nIf this gives you a running Pod, then it's likely all good.\n\n## Usage\n\nOnce the operator is installed, you can create a Minecraft server by creating a `MinecraftServer` object in Kubernetes.\nThis will create and manage resources such as a Pod and a Service. Resources are created in whatever namespace the\n`MinecraftServer` object is in.\n\nNote that the API uses \"allowList\" in place of \"whitelist\", but it is applied to the server in the same way.\n\n### Example Server\n\n```yaml\napiVersion: minecraft.jameslaverack.com/v1alpha1\nkind: MinecraftServer\nmetadata:\n  name: my-minecraft-server\nspec:\n  eula: Accepted\n  minecraftVersion: 1.18.1\n  type: Paper\n  opsList:\n    - name: Player1\n      uuid: da6a1ae6-e2f5-4e32-9135-b82a9ef426a9\n  allowList:\n    - name: Player2\n      uuid: 880182d6-a0e3-44cd-a57c-8dc3799e92b8\n  world:\n    persistentVolumeClaim:\n      claimName: minecraft-world\n  motd: \"My Minecraft Server\"\n  maxPlayers: 8\n  viewDistance: 16\n  externalServiceIP: 192.168.1.51\n  vanillaTweaks:\n    survival:\n      - 'multiplayer sleep'\n      - 'afk display'\n    items:\n      - 'player head drops'\n---\napiVersion: v1\nkind: PersistentVolumeClaim\nmetadata:\n  name: minecraft-world\nspec:\n  accessModes:\n    - ReadWriteOnce\n  resources:\n    requests:\n      storage: 10Gi\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjameslaverack%2Fkubernetes-minecraft-operator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjameslaverack%2Fkubernetes-minecraft-operator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjameslaverack%2Fkubernetes-minecraft-operator/lists"}