Skip to content

Example Docker Compose setup for hosting Plausible Community Edition

License

Notifications You must be signed in to change notification settings

plausible/community-edition

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A getting started guide to self-hosting Plausible Community Edition


Prerequisites

  • Docker and Docker Compose must be installed on your machine.
  • CPU must support SSE 4.2 or NEON instruction set or higher (required by ClickHouse).
  • At least 2 GB of RAM is recommended for running ClickHouse and Plausible without fear of OOMs.

Quick start

1. Clone this repository

$ git clone -b v3.2.0 --single-branch https://github.com/plausible/community-edition plausible-ce
Cloning into 'plausible-ce'...

$ cd plausible-ce

$ ls -1
clickhouse/
compose.yml
LICENSE
README.md

2. Create and configure your environment file

$ touch .env
$ echo "BASE_URL=https://plausible.example.com" >> .env
$ echo "SECRET_KEY_BASE=$(openssl rand -base64 48)" >> .env

$ cat .env
BASE_URL=https://plausible.example.com
SECRET_KEY_BASE=...unique secret key base...

Make sure $BASE_URL is set to the actual domain where you plan to host the service. The domain must have a DNS entry pointing to your server for proper resolution and automatic Let's Encrypt TLS certificate issuance. More on that in the next step.

Also ensure $SECRET_KEY_BASE is set to at least a 64-byte string.

Tip

To evaluate CE locally, set BASE_URL=http://localhost:8000 (or any other port on your system).

3. Expose Plausible server to the web with a compose override file:

$ echo "HTTP_PORT=80" >> .env
$ echo "HTTPS_PORT=443" >> .env

$ cat > compose.override.yml << EOF
services:
    plausible:
        ports:
            - 80:80
            - 443:443
EOF

Setting HTTP_PORT=80 and HTTPS_PORT=443 enables automatic Let's Encrypt TLS certificate issuance. You might want to choose different values if, for example, you plan to run Plausible behind a reverse proxy.

Tip

To evaluate CE locally, you only need to set HTTP_PORT and expose it on the system port from the previous step, e.g. for BASE_URL=http://localhost:8000 and server HTTP_PORT=80, ports override should be - 8000:80.

4. Start the services with Docker Compose:

$ docker compose up -d

5. Visit your instance at $BASE_URL and create the first user.

Note

Plausible CE is funded by our cloud subscribers.

If you know someone who might find Plausible useful, we'd appreciate if you'd let them know.

Wiki

For more information on installation, upgrades, configuration, and integrations please see our wiki.

Contact

About

Example Docker Compose setup for hosting Plausible Community Edition

Resources

License

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •