Terminal • Self-hosted

LPMud-Revised

Classic LPmud server from the early 1990s, containerized with a web admin dashboard

Powerful Features

Everything you need to run a classic LPmud server

Classic LPmud Driver

ldmud 3.6.x in compat mode for authentic 2.4.5 mudlib compatibility

Live Editing

Edit mudlib files on the host; changes reflect immediately without rebuilds

Wizard Access

Players reaching level 25+ gain admin privileges to build and evaluate code

Web Admin Panel

Flask dashboard on port 8080 — server status, backups, map viewer, and scheduled map regeneration

Interactive World Map

Leaflet.js map viewer with zoom, pan, and drag — auto-generated from mudlib room files

Security

Both containers run as non-root users with CSRF protection, rate limiting, and session auth

Persistent Data

Named volumes for logs and save data survive container restarts

Simple Architecture

Two Docker services: the MUD server and a separate Flask admin dashboard

  • Multi-stage Debian build compiles ldmud from source, keeping the runtime image lean
  • Non-root mud user with proper file ownership via --chown
  • Volume mount mudlib/ for live editing during development
  • Named volumes for logs and save data survive container restarts
  • Admin service (Flask + Gunicorn) runs as a separate container on port 8080
  • Mudlib mounted read-only in admin — dashboard can back up but not modify game files

Technical Details

Built With

  • Docker & Docker Compose
  • ldmud 3.6.x
  • Debian bookworm-slim
  • Flask + Gunicorn (admin)
  • Python / Leaflet.js (maps)

Requirements

  • Docker & Docker Compose
  • Telnet client
  • Port 4000 — MUD server
  • Port 8080 — admin dashboard

Ready to Run Your Own MUD?

Clone the repo, copy the .env, run docker compose up — telnet on 4000, admin dashboard on 8080