infrastructure/ansible/roles/plausible/files/docker-compose.yml
Jake Howard a81e2793f8
Add a secondary domain for plausible less likely to match blockers
Might change things, might not. But it's a fun experiment to try anyway.

Using a custom middleware to override the path due to https://github.com/plausible/analytics/pull/340
2020-11-25 11:11:29 +00:00

68 lines
2.4 KiB
YAML

version: "2.3"
services:
plausible:
image: plausible/analytics:v1.1
restart: unless-stopped
command: sh -c "/entrypoint.sh db migrate && /entrypoint.sh run"
depends_on:
- db
- clickhouse
- geoip
volumes:
- ./geoip:/mnt/geoip:ro
labels:
- traefik.enable=true
- traefik.http.routers.plausible.rule=Host(`plausible.theorangeone.net`)
- traefik.http.services.plausible-plausible.loadbalancer.server.port=8000 # https://github.com/plausible/analytics/pull/237
- traefik.http.routers.plausible.tls.certresolver=le
- traefik.http.routers.plausible.middlewares=compress@file
- traefik.http.routers.plausible-bare.rule=Host(`elbisualp.theorangeone.net`)
- traefik.http.routers.plausible-bare.tls.certresolver=le
- traefik.http.routers.plausible-bare.service=plausible-plausible
- traefik.http.middlewares.plausible-bare.replacepath.path=/js/plausible.js # https://github.com/plausible/analytics/pull/340
- traefik.http.routers.plausible-bare.middlewares=compress@file,plausible-bare
environment:
- SECRET_KEY_BASE={{ secret_key }}
- SIGNING_SALT={{ signing_salt }}
- DATABASE_URL=postgres://plausible:plausible@db:5432/plausible
- DISABLE_REGISTRATION=true
- DISABLE_SUBSCRIPTION=true
- CLICKHOUSE_DATABASE_URL=http://clickhouse:8123/plausible
- BASE_URL=https://plausible.theorangeone.net
- GEOLITE2_COUNTRY_DB=/mnt/geoip/GeoLite2-Country.mmdb
clickhouse:
image: yandex/clickhouse-server:20.6
restart: unless-stopped
volumes:
- ./clickhouse:/var/lib/clickhouse
- ./docker_related_config.xml:/etc/clickhouse-server/config.d/docker_related_config.xml:ro
- ./docker_related_user_config.xml:/etc/clickhouse-server/users.d/docker_related_user_config.xml:ro
tmpfs:
- /var/log/clickhouse-server
ulimits:
nofile:
soft: 262144
hard: 262144
db:
image: postgres:12-alpine
restart: unless-stopped
volumes:
- /mnt/tank/dbs/postgres/plausible:/var/lib/postgresql/data
environment:
- POSTGRES_PASSWORD=plausible
- POSTGRES_USER=plausible
geoip:
image: maxmindinc/geoipupdate:latest
environment:
- GEOIPUPDATE_FREQUENCY=168
- GEOIPUPDATE_EDITION_IDS=GeoLite2-Country
- GEOIPUPDATE_ACCOUNT_ID={{ geoip_account_id }}
- GEOIPUPDATE_LICENSE_KEY={{ geoip_license_key }}
volumes:
- ./geoip:/usr/share/GeoIP