plausible-hosting/docker-compose.yml
2024-06-17 11:51:59 +07:00

57 lines
1.6 KiB
YAML

services:
plausible_db:
# Plausible v2.1.1 was tested against PostgreSQL versions 15 and 16
# https://github.com/plausible/analytics/blob/v2.1.1/.github/workflows/elixir.yml#L21-L32
image: postgres:16-alpine
restart: always
volumes:
- db-data:/var/lib/postgresql/data
environment:
- POSTGRES_PASSWORD=postgres
plausible_events_db:
image: clickhouse/clickhouse-server:24.3.3.102-alpine
restart: always
volumes:
- event-data:/var/lib/clickhouse
- event-logs:/var/log/clickhouse-server
- ./clickhouse/clickhouse-config.xml:/etc/clickhouse-server/config.d/logging.xml:ro
- ./clickhouse/clickhouse-user-config.xml:/etc/clickhouse-server/users.d/logging.xml:ro
ulimits:
nofile:
soft: 262144
hard: 262144
plausible:
image: ghcr.io/plausible/community-edition:v2.1.2
restart: always
command: sh -c "sleep 10 && /entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run"
depends_on:
- plausible_db
- plausible_events_db
ports:
- 80:8000
- 443:8001
volumes:
- plausible-tmp:/tmp
environment:
- BASE_URL=replace-me
- SECRET_KEY_BASE=replace-me
- TOTP_VAULT_KEY=replace-me
- DATA_DIR=/tmp
- SITE_ENCRYPT_DIRECTORY_URL=https://acme-v02.api.letsencrypt.org/directory
- SITE_ENCRYPT_DB_FOLDER=/tmp/site_encrypt_db
- SITE_ENCRYPT_MODE=auto
- SITE_ENCRYPT_CLIENT=certbot
- LOG_LEVEL=notice
volumes:
db-data:
driver: local
event-data:
driver: local
event-logs:
driver: local
plausible-tmp:
driver: local