Plausible Community Edition Analytics with PostgreSQL and ClickHouse
Deploy self-hosted Plausible web analytics with dedicated databases on shared services and HTTPS through Traefik.
Summary
- Category
- Jet Templates
- Tags
- MonitoringWeb
- Authors
- Cetmix OÜ
- License
- AGPL-3
- Version
- 1.0.0
- Call sign
- jet_template_plausible_docker
- Website
- cetmix.com/contact
This snippet imports the Plausible CE Jet Template, defaulting to ghcr.io/plausible/community-edition:v3.2.1. Each Jet runs one Plausible container with a persistent application volume. It uses a dedicated PostgreSQL database for application data and a dedicated ClickHouse database for analytics events. Traefik routes HTTPS to Plausible's internal port 8000 by default. The YAML includes the Traefik 3, PostgreSQL 17, ClickHouse 24.12, Docker, Fail2ban and Tower Core dependency templates.
Configure and launch
- Import the YAML and install the Plausible template on the target server. Set the shared PostgreSQL Jet's
postgres_passwordin Tower Keys and Secrets. Plausible validates that the password uses only letters, digits,.,_,~and-because it is embedded in the database URL. ClickHouse Build and Plausible Prepare generate missing server-scopedclickhouse_passwordandplausible_secret_key_basevalues, respectively. - Set
plausible_admin_emailand optionallyplausible_admin_password. Prepare generates a password in the Jet variables if one is absent. Set the Jet URL orweb_domain, configure Traefik'sinstance_certbot_email, and ensure the hostname resolves to the server. For automatic Cloudflare DNS registration, setcloudflare_tokenandcloudflare_zone_id. For a Traefik DNS challenge, set the selected provider's credentials (cloudflare_token,digitalocean_api_token,hetzner_api_token, oraws_dns_key_idandaws_dns_access_key). - Create a Jet targeting Running. Prepare resolves the linked database Jets and sets the database names. Build starts Plausible long enough to create and migrate the databases and bootstrap an administrator if there are no users. The rendered administrator creation command includes the password in Tower's command log. Public registration is disabled by default. Sign in at the Jet URL, add a site and install the tracking snippet shown for that site.
Configure optional services
- For invitations, password resets, reports and alerts, configure the mail sender and SMTP settings. If using SMTP authentication, set
plausible_smtp_password. To discard email intentionally, setMAILER_ADAPTER=Bamboo.LocalAdapterinplausible_extra_env. - MaxMind geolocation uses
plausible_use_maxmindandplausible_maxmind_license_key. The Google integration usesplausible_google_client_idandplausible_google_client_secret. - For S3 backups on the bundled PostgreSQL Jet, configure its pgBackRest repository and supply
aws_key_idandaws_access_key.
Operate and troubleshoot
Use Rebuild to apply container settings or a new plausible_version. Plausible runs database migrations when the container starts. Remove removes the container and preserves the databases and volume. Destroy drops both Plausible databases, removes the Jet volume, and removes the managed Cloudflare record when applicable.
For startup failures, check Plausible logs, the Flight Plan output and connectivity to PostgreSQL and ClickHouse. For HTTPS issues, check DNS and Traefik logs. When migrating a site from Plausible Cloud, replace its tracking snippet with the one from the new instance and import its history using the site's CSV import.
This package is distributed under the GNU Affero General Public License v3.0 (AGPL-3) or later.
These Terms and Conditions (“Terms”) govern your access to and use of YAML configuration files (“Packages”, “YAML Snippets”, or “Snippets”) made available via the Cetmix Tower platform, operated by Cetmix OÜ, Ranna 6, Haademeeste, Voiste, 86501, Estonia (“Cetmix”, “we”, “our”, or “us”).
By downloading, installing, or otherwise using any YAML Snippets from the Cetmix Tower platform, you agree to be bound by these Terms.
1. Use of Packages
1.1. The YAML Snippets are provided either by Cetmix or third-party authors (“Authors”).
1.2. You are solely responsible for verifying the functionality, safety, and suitability of any YAML Snippet before using it in a production environment.
1.3. You may use the Snippets only in accordance with their respective licenses, which may be open-source or commercial.
2. Author Responsibility
2.1. Authors are solely responsible for the content, accuracy, functionality, and compliance of the YAML Snippets they publish.
2.2. Cetmix does not review or verify the correctness, security, or compliance of third-party Snippets.
2.3. If you are an Author, you represent and warrant that your submitted YAML Snippet:
- Does not infringe on any third-party rights;
- Complies with applicable laws and regulations;
- Does not contain harmful, malicious, or misleading code or behavior.
3. Limitation of Liability
3.1. Cetmix provides access to the YAML Snippets “as is” and “as available,” without warranties of any kind, either express or implied.
3.2. Cetmix expressly disclaims all liability for any damages resulting from:
- Use or inability to use a YAML Snippet;
- Errors or omissions in the Snippets;
- Actions taken in reliance on any YAML Snippet;
- Misuse, misconfiguration, or system failure caused by a Snippet.
3.3. In no event shall Cetmix OÜ be liable for any indirect, incidental, special, punitive, or consequential damages, including but not limited to loss of data, profits, or service availability.
4. Security and Compliance
4.1. Cetmix does not guarantee that any Snippet is secure or free from vulnerabilities. You must review and test all Snippets before deploying them in sensitive or production environments.
4.2. Compliance with security, privacy, and regulatory requirements is your responsibility when using any Snippet.
5. Intellectual Property
5.1. Ownership of each YAML Snippet remains with its respective Author.
5.2. You must respect all license terms specified for each Snippet. Unauthorized reproduction, distribution, or sublicensing may result in legal consequences.
6. Modifications and Termination
6.1. Cetmix may modify or remove any YAML Snippet at any time without notice.
6.2. These Terms may also be updated periodically. Continued use of the platform constitutes acceptance of the revised Terms.
7. Governing Law and Jurisdiction
These Terms shall be governed by the laws of the Republic of Estonia. Any disputes arising under or in connection with these Terms shall be subject to the exclusive jurisdiction of the courts of Estonia.
8. Contact
For questions or concerns regarding these Terms or specific YAML Snippets, please contact us