mirror of
https://github.com/tiennm99/coolify.git
synced 2026-10-12 20:15:36 +00:00
Merge pull request #6735 from Blaumaus/swetrix-analytics-service
feat(service): add Swetrix template
This commit is contained in:
2 files changed
+179
No files matched your search
@@ -0,0 +1,8 @@
|
||||
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000" width="1000" height="1000">
|
||||
<defs>
|
||||
<image width="512" height="512" id="img1" href="data:image/png;base64,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 truncated
|
||||
</defs>
|
||||
<style>
|
||||
</style>
|
||||
<use id="logo512" href="#img1" transform="matrix(2.094,0,0,2.094,-39.5,-39.5)"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 60 KiB |
@@ -0,0 +1,171 @@
|
||||
# documentation: https://docs.swetrix.com/selfhosting/how-to
|
||||
# slogan: Privacy-friendly and cookieless European web analytics alternative to Google Analytics.
|
||||
# category: analytics
|
||||
# tags: analytics,privacy,monitoring,open-source,clickhouse,redis
|
||||
# logo: svgs/swetrix.svg
|
||||
# port: 3000
|
||||
|
||||
services:
|
||||
swetrix:
|
||||
image: swetrix/swetrix-fe:v4.0.5
|
||||
depends_on:
|
||||
- swetrix-api
|
||||
environment:
|
||||
- SERVICE_URL_SWETRIX_3000
|
||||
- API_URL=$SERVICE_URL_SWETRIXAPI
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD-SHELL
|
||||
- wget --no-verbose --tries=1 --spider http://localhost:3000/ping || exit 1
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
interval: 30s
|
||||
start_period: 15s
|
||||
|
||||
swetrix-api:
|
||||
image: swetrix/swetrix-api:v4.0.5
|
||||
environment:
|
||||
# Required
|
||||
- SECRET_KEY_BASE=$SERVICE_BASE64_64_SECRETKEYBASE
|
||||
- SERVICE_URL_SWETRIXAPI
|
||||
|
||||
# Optional
|
||||
- DISABLE_REGISTRATION=${DISABLE_REGISTRATION:-false}
|
||||
- IP_GEOLOCATION_DB_PATH=${IP_GEOLOCATION_DB_PATH:-}
|
||||
- DEBUG_MODE=${DEBUG_MODE:-false}
|
||||
- CLOUDFLARE_PROXY_ENABLED=${CLOUDFLARE_PROXY_ENABLED:-false}
|
||||
|
||||
# SMTP (optional)
|
||||
- SMTP_HOST=${SMTP_HOST:-}
|
||||
- SMTP_PORT=${SMTP_PORT:-}
|
||||
- SMTP_USER=${SMTP_USER:-}
|
||||
- SMTP_PASSWORD=${SMTP_PASSWORD:-}
|
||||
- FROM_EMAIL=${FROM_EMAIL:-}
|
||||
- SMTP_MOCK=${SMTP_MOCK:-false}
|
||||
|
||||
# OIDC (optional)
|
||||
- OIDC_ENABLED=${OIDC_ENABLED:-false}
|
||||
- OIDC_ONLY_AUTH=${OIDC_ONLY_AUTH:-false}
|
||||
- OIDC_DISCOVERY_URL=${OIDC_DISCOVERY_URL:-}
|
||||
- OIDC_CLIENT_ID=${OIDC_CLIENT_ID:-}
|
||||
- OIDC_CLIENT_SECRET=${OIDC_CLIENT_SECRET:-}
|
||||
|
||||
# Required service endpoints
|
||||
- REDIS_HOST=redis
|
||||
- CLICKHOUSE_HOST=http://clickhouse
|
||||
- CLICKHOUSE_PASSWORD=$SERVICE_PASSWORD_CLICKHOUSE
|
||||
- REDIS_PASSWORD=$SERVICE_PASSWORD_REDIS
|
||||
depends_on:
|
||||
redis:
|
||||
condition: service_healthy
|
||||
clickhouse:
|
||||
condition: service_healthy
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD-SHELL
|
||||
- wget --no-verbose --tries=1 --spider http://localhost:5005/ping || exit 1
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
interval: 30s
|
||||
start_period: 15s
|
||||
|
||||
redis:
|
||||
image: redis:8.2-alpine
|
||||
environment:
|
||||
- REDIS_PORT=${REDIS_PORT:-6379}
|
||||
- REDIS_USER=${REDIS_USER:-default}
|
||||
- REDIS_PASSWORD=$SERVICE_PASSWORD_REDIS
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD-SHELL
|
||||
- redis-cli ping | grep PONG
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
interval: 30s
|
||||
start_period: 1m
|
||||
|
||||
clickhouse:
|
||||
image: clickhouse/clickhouse-server:24.10-alpine
|
||||
environment:
|
||||
- CLICKHOUSE_DATABASE=${CLICKHOUSE_DATABASE:-analytics}
|
||||
- CLICKHOUSE_USER=${CLICKHOUSE_USER:-default}
|
||||
- CLICKHOUSE_PORT=${CLICKHOUSE_PORT:-8123}
|
||||
- CLICKHOUSE_PASSWORD=$SERVICE_PASSWORD_CLICKHOUSE
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD-SHELL
|
||||
- wget --no-verbose --tries=1 -O - http://127.0.0.1:8123/ping || exit 1
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
interval: 30s
|
||||
start_period: 1m
|
||||
cap_add:
|
||||
- SYS_NICE
|
||||
volumes:
|
||||
# Persistent storage for ClickHouse
|
||||
- swetrix-events-data:/var/lib/clickhouse
|
||||
|
||||
# Disable logging
|
||||
- type: bind
|
||||
source: ./disable-user-logging.xml
|
||||
target: /etc/clickhouse-server/users.d/disable-user-logging.xml
|
||||
read_only: true
|
||||
content: |
|
||||
<clickhouse>
|
||||
<profiles>
|
||||
<default>
|
||||
<log_queries>0</log_queries>
|
||||
<log_query_threads>0</log_query_threads>
|
||||
</default>
|
||||
</profiles>
|
||||
</clickhouse>
|
||||
- type: bind
|
||||
source: ./reduce-logs.xml
|
||||
target: /etc/clickhouse-server/config.d/reduce-logs.xml
|
||||
read_only: true
|
||||
content: |
|
||||
<clickhouse>
|
||||
<logger>
|
||||
<level>warning</level>
|
||||
<console>true</console>
|
||||
</logger>
|
||||
<query_thread_log remove="remove"/>
|
||||
<query_log remove="remove"/>
|
||||
<text_log remove="remove"/>
|
||||
<trace_log remove="remove"/>
|
||||
<metric_log remove="remove"/>
|
||||
<asynchronous_metric_log remove="remove"/>
|
||||
<session_log remove="remove"/>
|
||||
<part_log remove="remove"/>
|
||||
</clickhouse>
|
||||
|
||||
# Reduce RAM usage
|
||||
- type: bind
|
||||
source: ./preserve-ram-config.xml
|
||||
target: /etc/clickhouse-server/config.d/preserve-ram-config.xml
|
||||
read_only: true
|
||||
content: |
|
||||
<clickhouse>
|
||||
<mark_cache_size>536870912</mark_cache_size>
|
||||
<concurrent_threads_soft_limit_num>1</concurrent_threads_soft_limit_num>
|
||||
</clickhouse>
|
||||
- type: bind
|
||||
source: ./preserve-ram-user.xml
|
||||
target: /etc/clickhouse-server/users.d/preserve-ram-user.xml
|
||||
read_only: true
|
||||
content: |
|
||||
<clickhouse>
|
||||
<profiles>
|
||||
<default>
|
||||
<max_block_size>2048</max_block_size>
|
||||
<max_download_threads>1</max_download_threads>
|
||||
<input_format_parallel_parsing>0</input_format_parallel_parsing>
|
||||
<output_format_parallel_formatting>0</output_format_parallel_formatting>
|
||||
</default>
|
||||
</profiles>
|
||||
</clickhouse>
|
||||
|
||||
ulimits:
|
||||
nofile:
|
||||
soft: 262144
|
||||
hard: 262144
|
||||
Reference in new issue
Block a user