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.

GitHub
MikroDash logo

Self-host MikroDash

v0.8.77

Real-time dashboard and control center for MikroTik routers

BetaOpen SourceMIT
docker run -d --name mikrodash --restart unless-stopped -p 3081:3081 -v mikrodash-data:/data mikrodash:local
Updated15 hours ago
LanguageGo
Setup difficultyEasy
Stars
632
Ports
3081 (Web UI and WebSocket API), 13231 (UDP (userspace WireGuard) used only when zero-touch provisioning is switched on)
Docker
ghcr.io/secops-7/mikrodash
Main dashboard with live cardsConnections shown on a world mapConnections listWifi clients pageInterfaces pageFirewall rules pageBandwidth pageDHCP pageVPN and WireGuard pageRouting page

What is MikroDash?

Should you self-host MikroDash?

MikroDash scores 49/100 on selfhost.directory (how scoring works) and ranks #27 of 48 in Network Monitoring. It has 632 GitHub stars.

It shipped 10 stable releases in the past year. The latest, v0.8.77, came out on 23 October 2026. New versions land roughly every 3 days.

Setup is easy: most people get it running in one sitting. An official Docker image is available. It is MIT-licensed and written mostly in Go.

Its closest alternative on selfhost.directory is mitmproxy (86/100, 46 451 stars). It scores higher overall, so compare the two before you pick. See MikroDash vs mitmproxy side by side.

Features

  • Alerting
  • Audit Trail
  • Built-in AI agentOff by default.
  • Configuration Templates
  • Customizable dashboard
  • Geo connection map
  • History & reports
  • Multi-device fleet management
  • Real-time metrics streaming
  • Role-based Access Control
  • Scheduled configuration backups
  • Security audit
  • Single Sign-On (OIDC)
  • Web Terminal
  • Zero-touch provisioningOff by default; opens UDP 13231 when enabled.

MikroDash README

How to install MikroDash

Install MikroDash with Docker

docker run -d --name mikrodash --restart unless-stopped \
  -p 3081:3081 -v mikrodash-data:/data mikrodash:local

Shown in the build-from-source section against a locally built image; the published image is ghcr.io/secops-7/mikrodash.

How to configure MikroDash

  • -alert-dispatchonCommand-line flag: send alert notifications and scheduled report emails.

    Command-line flag: send alert notifications and scheduled report emails.

    values: on/off

  • -backup-scheduleronCommand-line flag: take scheduled configuration backups.

    Command-line flag: take scheduled configuration backups.

    values: on/off

  • -data/dataCommand-line flag: data directory.

    Command-line flag: data directory.

  • DATA_SECRETKey for credentials at rest; overrides the key generated on first run and saved to /data/.secret.

    Key for credentials at rest; overrides the key generated on first run and saved to /data/.secret.

  • FORCE_HTTPSMarks the session cookie Secure for use behind a TLS-terminating proxy; plain http sign-in stops working while set.

    Marks the session cookie Secure for use behind a TLS-terminating proxy; plain http sign-in stops working while set.

    values: true

  • -geo/app/geoCommand-line flag: directory with the bundled geo-IP database and city list.

    Command-line flag: directory with the bundled geo-IP database and city list.

  • -historyonCommand-line flag: record traffic, ping and connectivity history for Reports.

    Command-line flag: record traffic, ping and connectivity history for Reports.

    values: on/off

  • -listen:3081Command-line flag (image CMD): address to serve on.

    Command-line flag (image CMD): address to serve on.

  • LOG_HISTORY_SIZEHow many router log lines to keep in memory for the Logs page.

    How many router log lines to keep in memory for the Logs page.

  • MIKRODASH_ORIGINSHostnames the browser uses to reach MikroDash, comma separated (wildcards like *.example.com work). Required behind a reverse proxy.

    Hostnames the browser uses to reach MikroDash, comma separated (wildcards like *.example.com work). Required behind a reverse proxy.

  • MIKRODASH_ROUTER_CONCURRENCYCap on API commands in flight per router.

    Cap on API commands in flight per router.

  • MIKRODASH_TRUSTED_PROXIESIPs or CIDR ranges of your reverse proxies; their X-Forwarded-For is trusted so the login limit and audit trail see real visitors. Empty trusts none.

    IPs or CIDR ranges of your reverse proxies; their X-Forwarded-For is trusted so the login limit and audit trail see real visitors. Empty trusts none.

  • -no-pooloffCommand-line flag: do not hold background connections to routers nobody is watching.

    Command-line flag: do not hold background connections to routers nobody is watching.

    values: on/off

  • -originsemptyCommand-line flag: same as MIKRODASH_ORIGINS.

    Command-line flag: same as MIKRODASH_ORIGINS.

  • -retentiononCommand-line flag: run the daily sweep that ages old data out of the database.

    Command-line flag: run the daily sweep that ages old data out of the database.

    values: on/off

  • -trusted-proxiesemptyCommand-line flag: same as MIKRODASH_TRUSTED_PROXIES.

    Command-line flag: same as MIKRODASH_TRUSTED_PROXIES.

  • TZTimezone of the container's log lines; schedules follow the display timezone set in Settings.

    Timezone of the container's log lines; schedules follow the display timezone set in Settings.

MikroDash releases & version history

More in Network Management

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…