Back to Apps
Mercure

Deploy Mercure on Your Own Server

Mercure is a protocol allowing to push data updates to web browsers and other HTTP clients.

πŸ“¦ Other

Want to deploy Mercure on your server faster? Try Senate with one-command setup, automatic HTTPS and monitoring.

Get Started

What is Mercure?

Mercure is a protocol allowing to push data updates to web browsers and other HTTP clients in a convenient, fast, reliable and battery-efficient way. It is especially useful to publish real-time updates of resources served through web APIs, to reactive web and mobile apps. For documentation, see: https://mercure.rocks/docs Enter your Mercure Configuration parameters and click on next. It will take about a minute for the process to finish.

Self-Host Mercure

Follow these steps to deploy on your own server.

1

Install Docker

Skip this step if Docker is already installed on your server.

curl -fsSL https://get.docker.com | sh
2

Configure

Customize the settings below. Defaults work for most cases.

General
3

Deploy

Copy the configuration and run it on your server.

services:
  mercure:
    image: dunglas/mercure:v0.13
    environment:
      MERCURE_EXTRA_DIRECTIVES: subscriptions demo anonymous cors_origins * publish_origins *
      MERCURE_PUBLISHER_JWT_KEY: "!ChangeMe!"
      MERCURE_SUBSCRIBER_JWT_KEY: "!ChangeMe!"
      SERVER_NAME: :80
    volumes:
      - mercure-mercure-data:/data
      - mercure-mercure-config:/config
volumes:
  mercure-mercure-data: {}
  mercure-mercure-config: {}

Then run:

docker compose up -d
4

Access

Once started, access your app at http://localhost:80

Why Self-Host Mercure?

Full Data Ownership

Your data stays on your servers. No third-party access.

No Monthly Fees

Pay only for your server. No per-seat or usage charges.

Complete Control

Customize, backup, and scale on your own terms.

Privacy & Compliance

Meet GDPR, HIPAA, or internal security requirements.

Technical Details

Docker Image

dunglas/mercure:${mercure_version}

Want to go faster?

Try Senate! Senate handles Docker, HTTPS, updates, and monitoring for you. Deploy any of our 300+ apps with a single command.

Install on any Linux server:

sh -c "$(curl -sSL https://get.senate.sh)"