alecjp02/mc-router

By alecjp02

Updated about 1 month ago

Lightweight Minecraft Java Edition TCP gateway with static routing and Kubernetes Service discovery.

Image
Networking
0

1.9K

alecjp02/mc-router repository overview

mc-router

Docker Build Docker Pulls Docker Stars GitHub Issues GHCR License Kubernetes

mc-router provides mc-gateway, a lightweight Minecraft Java Edition TCP gateway that routes one public listener to backend Minecraft servers based on the hostname in the initial Minecraft handshake.

It supports static YAML routing first, with optional namespace-scoped Kubernetes Service annotation discovery for containerized deployments.

Features

  • Static YAML route configuration
  • Minecraft Java Edition handshake-based routing
  • TCP backend proxying
  • Unknown host deny / default policies
  • Optional status ping fallback responses
  • Optional login disconnect fallback responses
  • Optional Prometheus metrics endpoint
  • Graceful shutdown
  • SIGHUP config reload
  • Namespace-scoped Kubernetes Service annotation discovery
  • Kubernetes startup initial list, reload re-list, runtime Service watch, retry/backoff recovery, and low-cardinality discovery metrics

Image

docker pull alexandergg0520/mc-router:v0.1.0

Use latest only if you intentionally want the newest published build.

Scope

v0.1.0 is the first MVP release for the current gateway and namespace-scoped Service annotation discovery model.

It is not a general-purpose Kubernetes ingress controller and does not currently include all-namespaces discovery, Pod annotations, EndpointSlice discovery, CRD route discovery, UDP routing, Simple Voice Chat routing, a REST API, or a Web UI.

See the GitHub repository for configuration examples, Kubernetes manifests, and release notes.

Tag summary

Content type

Image

Digest

sha256:f4871f982

Size

10.5 MB

Last updated

about 1 month ago

docker pull alecjp02/mc-router:sha-a4cfec4