selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

minepanel logo

Self-host minepanel

v1.13.39

Docker web panel for Minecraft Java & Bedrock servers

ReleaseSource AvailableAGPL-3.0
Updated10 hours ago
LanguageTypescript
Setup difficultyModerate
Stars
283
RAM
2GB minimum
Ports
3000 (Web UI (frontend)), 8091 (Backend API)
Requires
Docker
Docker
ketbom/minepanel-frontend
Install with Docker Compose
Minepanel dashboard showing server counts, system health and quick actionsServer list with status, ports and bulk selectionCreate New Server dialog with Quick Create or From Template optionsSettings → Java Defaults for players, memory, CPU, view distance, online mode and backupsServer header showing type, version, players, uptime, CPU and connection addressesLogs tab with live log stream, error detection and container CPU/memoryMetrics tab showing TPS, MSPT, CPU, memory, players and performance historyCommands tab with quick commands, command input and server responseTasks tab showing a restart task on a fixed intervalJava command console with command history and searchable presets

What is minepanel?

Minepanel gives you a browser control panel for hosting Minecraft servers on your own hardware. Each world runs in a separate Docker container, so they stay isolated and portable. Pick from every major server flavor — vanilla releases, optimized forks, mod loaders, and massive modpack bundles. The dashboard streams live charts of processor load, memory use, player counts, and tick timing so you catch lag instantly. A console tab stores command presets and history, while a scheduler handles automatic restarts and timed broadcasts. The file browser uploads huge worlds in chunks so transfers stay reliable. Backups run on a schedule and can push to any S3-compatible bucket. Networking options include a hostname router for Java servers and a lobby proxy for Paper networks. Sign in with local credentials or any OpenID Connect identity provider; roles and per-server permissions keep access tidy. Alerts fan out to chat apps, email, or push services. Developers receive scoped API keys and an MCP endpoint so AI tools can spin up servers or add mods. Launch with one Docker Compose command, run on x86 or ARM, and choose from nine interface languages.

Should you self-host minepanel?

minepanel scores 51/100 on selfhost.directory (how scoring works) and ranks #28 of 62 in Game Servers. It has 283 GitHub stars.

It shipped 25 stable releases in the past year. The latest, v1.13.39, came out on 24 October 2026. New versions land roughly every 3 days.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is AGPL-3.0-licensed and written mostly in Typescript.

Its closest alternative on selfhost.directory is Pelican Panel (64/100, 2 412 stars). It scores higher overall, so compare the two before you pick. See minepanel vs Pelican Panel side by side.

Features

  • API tokens & MCP endpoint
  • Backups
  • File Manager
  • Java & Bedrock Edition support
  • Multi-language
  • Multiple server types
  • Notifications
  • OIDC Single Sign-On
  • Player insights
  • Proxy support (mc-router)
  • RCON Console
  • Real-time monitoring
  • Scheduled Tasks
  • User roles & access control
  • Velocity network

minepanel README

How to install minepanel

Install minepanel with Docker Compose

Environment variables
JWT_SECRET (required), FRONTEND_PORT, BACKEND_PORT, BASE_DIR, FRONTEND_URL, NEXT_PUBLIC_BACKEND_URL, SMTP_*, OIDC_*

git clone https://github.com/Ketbome/minepanel.git cd minepanel echo "JWT_SECRET=$(openssl rand -base64 32)" > .env docker compose up -d

Recommended installation method. Access at http://localhost:3000

How to configure minepanel

  • ALLOW_INSECURE_AUTH_COOKIESfalseSet true only for HTTP/LAN setups (less secure)

    Set true only for HTTP/LAN setups (less secure)

    values: true, false

  • BACKEND_PORT8091API port

    API port

  • BACKUP_BASE_DIROptional host path for backups (e.g. /network-disk/minepanel). Empty = ${BASE_DIR}/servers/<id>/backups. Per-server override available in the UI.

    Optional host path for backups (e.g. /network-disk/minepanel). Empty = ${BASE_DIR}/servers/<id>/backups. Per-server override available in the UI.

  • BASE_DIR$PWDHost path that maps to /app. Auto-detected from the /app/servers mount; this is only a fallback for local/non-Docker runs

    Host path that maps to /app. Auto-detected from the /app/servers mount; this is only a fallback for local/non-Docker runs

  • BASE_PATHOptional backend prefix, e.g. /api

    Optional backend prefix, e.g. /api

  • COMPOSE_PROJECTOptional prefix for server compose project names (final name: <prefix>_<serverId>)

    Optional prefix for server compose project names (final name: <prefix>_<serverId>)

  • FRONTEND_PORT3000Web UI port

    Web UI port

  • FRONTEND_URLhttp://localhost:3000Must match browser URL (controls CORS)

    Must match browser URL (controls CORS)

  • JWT_SECRETAuth secret. Generate with: openssl rand -base64 32

    Auth secret. Generate with: openssl rand -base64 32

  • NEXT_PUBLIC_BACKEND_URLhttp://localhost:8091API URL for frontend

    API URL for frontend

  • NEXT_PUBLIC_BASE_PATHOptional frontend prefix, e.g. /minepanel (build-time for frontend)

    Optional frontend prefix, e.g. /minepanel (build-time for frontend)

  • NEXT_PUBLIC_DEFAULT_LANGUAGEenDefault language

    Default language

    values: en, es, nl, de, pl, fr, ru, pt, tr

  • OIDC_CLIENT_IDOAuth2 client ID

    OAuth2 client ID

  • OIDC_CLIENT_SECRETOAuth2 client secret (kept server-side only)

    OAuth2 client secret (kept server-side only)

  • OIDC_DISABLE_PASSWORD_LOGINfalsetrue hides and blocks username/password login (SSO only)

    true hides and blocks username/password login (SSO only)

    values: true, false

  • OIDC_ISSUERProvider issuer URL (endpoints are auto-discovered)

    Provider issuer URL (endpoints are auto-discovered)

  • OIDC_PROVIDER_NAMESSOLabel shown on the login button

    Label shown on the login button

  • OIDC_REDIRECT_URIBackend callback, e.g. https://api.example.com/auth/oidc/callback

    Backend callback, e.g. https://api.example.com/auth/oidc/callback

  • OIDC_SCOPESopenid email profileSpace-separated scopes

    Space-separated scopes

  • PASSWORD_RESET_TOKEN_EXPIRES_IN_MINUTES60Password reset link lifetime in minutes

    Password reset link lifetime in minutes

  • SMTP_FROMMinepanel <no-reply@example.com>Sender shown in password reset emails

    Sender shown in password reset emails

  • SMTP_HOSTSMTP server hostname

    SMTP server hostname

  • SMTP_PASSSMTP password

    SMTP password

  • SMTP_PORT587SMTP port

    SMTP port

  • SMTP_SECUREfalseUse true for SMTPS/465, false for STARTTLS/587

    Use true for SMTPS/465, false for STARTTLS/587

    values: true, false

  • SMTP_USERSMTP username

    SMTP username

minepanel releases & version history

FAQ

Where to get support?

Troubleshooting guide, GitHub Issues, and GitHub Discussions.

How does Minepanel compare to Pterodactyl and AMP?

Minepanel installs in 1 command, is free, supports multi-user, and is lightweight compared to Pterodactyl (complex, heavy) and AMP (paid, medium).

Where is data stored?

Database: ./data/minepanel.db, Servers: ./servers/

What ports are used?

3000 (Web UI), 8091 (API), 25565+ TCP (Java servers/proxy), 19132+ UDP (Bedrock servers).

How to set up HTTPS/SSL?

Use Nginx/Caddy reverse proxy with Let's Encrypt.

How to enable remote access?

Update FRONTEND_URL to your IP/domain, open firewall ports.

How to add mods?

Use Modrinth/CurseForge integration in panel.

Can I run multiple servers?

Yes, as many as hardware allows.

What server types work?

All: Vanilla, Paper, Forge, Neoforge, Fabric, Spigot, Purpur, CurseForge modpacks.

How to install?

Clone the repo, generate JWT_SECRET, create .env, and run docker compose up -d.

What are the requirements?

Docker 20.10+, 2GB RAM minimum, Linux/macOS/Windows(WSL2).

What is Minepanel?

Web panel for managing Minecraft servers with Docker. No command-line needed.

More in Docker Management

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…