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