MirrorNest
← All guides

HedgeDoc

A real-time collaborative Markdown editor that lets multiple people write and edit the same document simultaneously, similar to HackMD but fully self-hosted.

Target: Any Docker hostProductivityDocumentsOfficial homepage ↗Official docs ↗
This guide is synthesized from HedgeDoc's own official documentation, linked above — always cross-check exact package/version names there before running these commands on a production server, since distro and project versions move over time.
  1. 1Create a docker-compose.yml

    services: database: image: postgres:18.6-alpine environment: - POSTGRES_USER=hedgedoc - POSTGRES_PASSWORD=change_me - POSTGRES_DB=hedgedoc volumes: - database:/var/lib/postgresql/data restart: unless-stopped app: image: quay.io/hedgedoc/hedgedoc:latest environment: - CMD_DB_URL=postgres://hedgedoc:change_me@database:5432/hedgedoc - CMD_DOMAIN=localhost - CMD_URL_ADDPORT=true volumes: - uploads:/hedgedoc/public/uploads ports: - "3000:3000" depends_on: - database restart: unless-stopped volumes: database: uploads:

    This is a minimal starter example — HedgeDoc's docs recommend a separate production hardening guide before exposing it publicly.

  2. 2Start HedgeDoc

    docker-compose up -d
  3. 3Access it

    Sign up for the first account directly in the web UI (or configure an external auth provider via CMD_* env vars).

    open http://localhost:3000