plausible-hosting/compose.yml
ruslandoga e36dd47ef8 v2.1.2
2024-09-04 16:11:58 +07:00

53 lines
1.7 KiB
YAML

services:
plausible_db:
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:
# Note that setting ports opens firewall for external access.
# When using a reverse proxy, set to "127.0.0.1:${HTTP_PORT}:${HTTP_PORT}" to restrict access to localhost only.
- ${HTTP_PORT}:${HTTP_PORT}
- ${HTTPS_PORT}:${HTTPS_PORT}
volumes:
- plausible-data:/var/lib/plausible
environment:
BASE_URL: ${BASE_URL}
SECRET_KEY_BASE: ${SECRET_KEY_BASE}
HTTP_PORT: ${HTTP_PORT}
# Setting HTTPS port enables automatic issuance of TLS certificates from Let's Encrypt.
# Remove this if using a reverse proxy.
HTTPS_PORT: ${HTTPS_PORT}
DATABASE_URL: postgres://postgres:postgres@plausible_db:5432/plausible_db
CLICKHOUSE_DATABASE_URL: http://plausible_events_db:8123/plausible_events_db
DISABLE_REGISTRATION: true
volumes:
db-data:
event-data:
event-logs:
plausible-data: