plausible-hosting/compose.yml

59 lines
1.6 KiB
YAML
Raw Normal View History

2024-09-04 04:11:58 -05:00
services:
plausible_db:
image: postgres:16-alpine
restart: always
volumes:
- db-data:/var/lib/postgresql/data
environment:
- POSTGRES_PASSWORD=postgres
2024-09-13 01:31:10 -05:00
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 30s
timeout: 5s
retries: 5
2024-09-04 04:11:58 -05:00
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
2024-09-13 01:31:10 -05:00
healthcheck:
test: ["CMD-SHELL", "wget -q -O - http://localhost:8123/ping || exit 1"]
interval: 30s
timeout: 5s
retries: 5
2024-09-04 04:11:58 -05:00
plausible:
image: ghcr.io/plausible/community-edition:v2.1.2
restart: always
2024-09-13 01:27:48 -05:00
command: sh -c "/entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run"
2024-09-04 04:11:58 -05:00
depends_on:
2024-09-13 01:31:10 -05:00
plausible_db:
condition: service_healthy
plausible_events_db:
condition: service_healthy
2024-09-04 04:11:58 -05:00
ports:
# Note that setting ports opens firewall for external access.
- ${HTTP_PORT}:${HTTP_PORT}
- ${HTTPS_PORT}:${HTTPS_PORT}
volumes:
- plausible-data:/var/lib/plausible
environment:
2024-09-13 01:27:48 -05:00
- BASE_URL=${BASE_URL}
- SECRET_KEY_BASE=${SECRET_KEY_BASE}
- HTTP_PORT
- HTTPS_PORT
2024-09-04 04:11:58 -05:00
volumes:
db-data:
event-data:
event-logs:
plausible-data: