114 lines
5.4 KiB
YAML
114 lines
5.4 KiB
YAML
captainVersion: 4
|
|
|
|
services:
|
|
$$cap_appname-mail:
|
|
image: bytemark/smtp
|
|
environment:
|
|
RELAY_HOST: $$cap_RELAY_HOST
|
|
RELAY_PORT: $$cap_RELAY_PORT
|
|
RELAY_USERNAME: $$cap_RELAY_USERNAME
|
|
RELAY_PASSWORD: $$cap_RELAY_PASSWORD
|
|
caproverExtra:
|
|
notExposeAsWebApp: 'true'
|
|
|
|
$$cap_appname-postgres:
|
|
image: postgres:$$cap_POSTGRES_VERSION
|
|
volumes:
|
|
- $$cap_appname-postgres-data:/var/lib/postgresql/data
|
|
environment:
|
|
POSTGRES_USER: plausible
|
|
POSTGRES_PASSWORD: $$cap_POSTGRES_PASSWORD
|
|
caproverExtra:
|
|
notExposeAsWebApp: 'true'
|
|
|
|
$$cap_appname-clickhouse:
|
|
image: clickhouse/clickhouse-server:$$cap_CLICKHOUSE_VERSION
|
|
volumes:
|
|
- $$cap_appname-clickhouse-data:/var/lib/clickhouse
|
|
caproverExtra:
|
|
notExposeAsWebApp: 'true'
|
|
|
|
$$cap_appname:
|
|
depends_on:
|
|
- $$cap_appname-postgres
|
|
- $$cap_appname-clickhouse
|
|
- $$cap_appname-mail
|
|
caproverExtra:
|
|
containerHttpPort: '8000'
|
|
dockerfileLines:
|
|
- FROM plausible/analytics:$$cap_PLAUSIBLE_VERSION
|
|
- CMD ["sh", "-c", "sleep 10 && /entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run"]
|
|
environment:
|
|
BASE_URL: http://$$cap_appname.$$cap_root_domain
|
|
SECRET_KEY_BASE: $$cap_gen_random_hex(64)
|
|
DATABASE_URL: postgres://plausible:$$cap_POSTGRES_PASSWORD@srv-captain--$$cap_appname-postgres:5432/plausible
|
|
CLICKHOUSE_DATABASE_URL: http://srv-captain--$$cap_appname-clickhouse:8123/plausible
|
|
DISABLE_REGISTRATION: 'true'
|
|
MAILER_EMAIL: $$cap_RELAY_USERNAME
|
|
SMTP_HOST_ADDR: srv-captain--$$cap_appname-mail
|
|
SMTP_HOST_PORT: '25'
|
|
|
|
caproverOneClickApp:
|
|
variables:
|
|
- defaultValue: 'plausible'
|
|
description: This is the PostgreSQL password for user 'plausible'. Please change it.
|
|
id: $$cap_POSTGRES_PASSWORD
|
|
label: POSTGRES_PASSWORD
|
|
validRegex: /^([^\s^\/])+$/
|
|
- defaultValue: 'smtp.mailgun.org'
|
|
description: This is the SMTP host for sending email. Use Mailgun or whatever other service.
|
|
id: $$cap_RELAY_HOST
|
|
label: RELAY_HOST
|
|
validRegex: /^([^\s^\/])+$/
|
|
- defaultValue: '587'
|
|
description: This is the port for the SMTP host. Please change it if needed.
|
|
id: $$cap_RELAY_PORT
|
|
label: RELAY_PORT
|
|
validRegex: /^([^\s^\/])+$/
|
|
- description: This is the username for logging into the SMTP host. Please change it according to your host.
|
|
id: $$cap_RELAY_USERNAME
|
|
label: RELAY_USERNAME
|
|
- description: This is the password for logging into the SMTP host. Please change it according to your host.
|
|
id: $$cap_RELAY_PASSWORD
|
|
label: RELAY_PASSWORD
|
|
validRegex: /^([^\s^\/])+$/
|
|
- description: The version of Plausible docker image (from https://hub.docker.com/r/plausible/analytics/tags e.g. v2.0)
|
|
id: $$cap_PLAUSIBLE_VERSION
|
|
label: PLAUSIBLE_VERSION
|
|
defaultValue: v2.0
|
|
validRegex: /^([^\s^\/])+$/
|
|
- description: Clickhouse version (from https://hub.docker.com/r/clickhouse/clickhouse-server/tags, e.g. 23.3.7.5-alpine)
|
|
id: $$cap_CLICKHOUSE_VERSION
|
|
label: CLICKHOUSE_VERSION
|
|
defaultValue: 23.3.7.5-alpine
|
|
validRegex: /^([^\s^\/])+$/
|
|
- description: Postgres version (from https://hub.docker.com/_/postgres?tab=tags, supported versions are 12, 13, and 14)
|
|
id: $$cap_POSTGRES_VERSION
|
|
label: POSTGRES_VERSION
|
|
defaultValue: 14-alpine
|
|
validRegex: /^([^\s^\/])+$/
|
|
instructions:
|
|
start: >-
|
|
Plausible is a lightweight and open-source website analytics tool.
|
|
It doesn't use cookies and is fully compliant with GDPR, CCPA and PECR. Made and hosted in the EU.
|
|
This one click app uses the:
|
|
- official image from https://hub.docker.com/r/plausible/analytics
|
|
- https://hub.docker.com/r/bytemark/smtp, that allows linked containers to send outgoing email
|
|
- official PostgreSQL image based on Alpine Linux and
|
|
- ClickHouse image https://hub.docker.com/r/clickhouse/clickhouse-server.
|
|
This version includes an open source geoip database (db-ip). If you would like to use Maxmind db,
|
|
You will need to mount a volume and an additional container to update the database. You can use this docker
|
|
compose file for reference: https://github.com/plausible/hosting/blob/master/geoip/docker-compose.geoip.yml
|
|
end: >-
|
|
Plausible.io is deployed and available as $$cap_appname.
|
|
In case you add a new domain to your application, remember to set the environment variable BASE_URL accordingly.
|
|
|
|
See https://github.com/plausible/analytics/blob/master/config/runtime.exs for all configurable
|
|
environment variables, for features like Google search, Postmark, and Slack integrations.
|
|
|
|
IMPORTANT: It will take up to 2 minutes for Plausible to be ready. Before that, you might see 502 error page.
|
|
displayName: Plausible v2
|
|
isOfficial: false
|
|
description: Plausible is a lightweight and open-source website analytics tool.
|
|
documentation: Taken from https://plausible.io/.
|