Update 2.1.0 (#11)
this is the start of many updates, this version is a small jump because it replaces the old unmaintained docker image with the community edition --------- Co-authored-by: stevensting <stefan@klasse-methode.it> Reviewed-on: https://git.coopcloud.tech/coop-cloud/plausible/pulls/11 Co-authored-by: devydave <bittedanke@tutanota.com>
This commit is contained in:
committed by
stevensting
co-authored by
stevensting
parent
657a540035
commit
4e47fbde47
+15
-3
@@ -5,7 +5,19 @@ DOMAIN=plausible.example.com
|
|||||||
## Domain aliases
|
## Domain aliases
|
||||||
#EXTRA_DOMAINS=', `www.plausible.example.com`'
|
#EXTRA_DOMAINS=', `www.plausible.example.com`'
|
||||||
LETS_ENCRYPT_ENV=production
|
LETS_ENCRYPT_ENV=production
|
||||||
|
#LOG_LEVEL=debug
|
||||||
|
|
||||||
SECRET_KEY_BASE=replace-me
|
DISABLE_REGISTRATION=true # true or false
|
||||||
DISABLE_AUTH=replace-me # true or false
|
|
||||||
DISABLE_REGISTRATION=replace-me # true or false
|
# Mail Configuration
|
||||||
|
#SECRET_SMTP_PASSWORD_VERSION=v1 # generate=false
|
||||||
|
#MAILER_ADAPTER=Bamboo.Mua
|
||||||
|
#MAILER_EMAIL=noreply@example.com
|
||||||
|
#MAILER_NAME=Noreply
|
||||||
|
#SMTP_HOST_ADDR=mail.example.com
|
||||||
|
#SMTP_HOST_PORT=587
|
||||||
|
#SMTP_USER_NAME=foo
|
||||||
|
#SMTP_HOST_SSL_ENABLED=false
|
||||||
|
|
||||||
|
SECRET_TOTP_VAULT_KEY_VERSION=v1 # length=32 encoding=base64
|
||||||
|
SECRET_KEY_BASE_VERSION=v1 # length=64
|
||||||
@@ -4,13 +4,13 @@
|
|||||||
|
|
||||||
<!-- metadata -->
|
<!-- metadata -->
|
||||||
* **Category**: Apps
|
* **Category**: Apps
|
||||||
* **Status**: 1, alpha
|
* **Status**: 3
|
||||||
* **Image**: [`plausible/analytics`](https://hub.docker.com/plausible/analytics), 4, upstream
|
* **Image**: [`plausible/analytics`](https://hub.docker.com/plausible/analytics), 4, upstream
|
||||||
* **Healthcheck**:
|
* **Healthcheck**:
|
||||||
* **Backups**: Yes
|
* **Backups**: Yes
|
||||||
* **Email**: No
|
* **Email**: Yes
|
||||||
* **Tests**:
|
* **Tests**: No
|
||||||
* **SSO**: No
|
* **SSO**: N/A
|
||||||
<!-- endmetadata -->
|
<!-- endmetadata -->
|
||||||
|
|
||||||
## Basic usage
|
## Basic usage
|
||||||
@@ -19,10 +19,11 @@
|
|||||||
2. Deploy [`coop-cloud/traefik`]
|
2. Deploy [`coop-cloud/traefik`]
|
||||||
3. `abra app new ${REPO_NAME} --secrets` (optionally with `--pass` if you'd like
|
3. `abra app new ${REPO_NAME} --secrets` (optionally with `--pass` if you'd like
|
||||||
to save secrets in `pass`)
|
to save secrets in `pass`)
|
||||||
4. `abra app config YOURAPPDOMAIN` - be sure to change `$DOMAIN` to something that resolves to
|
4. `abra app secret insert YOURAPPDOMAIN smtp_password v1` and add your smtp password
|
||||||
|
5. `abra app config YOURAPPDOMAIN` - be sure to change `$DOMAIN` to something that resolves to
|
||||||
your Docker swarm box
|
your Docker swarm box
|
||||||
5. `abra app deploy YOURAPPDOMAIN`
|
6. `abra app deploy YOURAPPDOMAIN`
|
||||||
6. Open the configured domain in your browser to finish set-up
|
7. Open the configured domain in your browser to finish set-up and create an admin account
|
||||||
|
|
||||||
[`abra`]: https://git.coopcloud.tech/coop-cloud/abra
|
[`abra`]: https://git.coopcloud.tech/coop-cloud/abra
|
||||||
[`coop-cloud/traefik`]: https://git.coopcloud.tech/coop-cloud/traefik
|
[`coop-cloud/traefik`]: https://git.coopcloud.tech/coop-cloud/traefik
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
export CLICKHOUSE_CONF_VERSION=v2
|
export CLICKHOUSE_CONFIG_VERSION=v2
|
||||||
export CLICKHOUSE_USER_CONF_VERSION=v2
|
export CLICKHOUSE_USER_CONFIG_VERSION=v2
|
||||||
export CLICKHOUSE_ENTRYPOINT_VERSION=v6
|
export CLICKHOUSE_ENTRYPOINT_VERSION=v7
|
||||||
export PG_BACKUP_VERSION=v1
|
export PG_BACKUP_VERSION=v1
|
||||||
export CLICKHOUSE_BACKUP_SCRIPT_VERSION=v1
|
export CLICKHOUSE_BACKUP_VERSION=v1
|
||||||
|
export PLAUSIBLE_ENTRYPOINT_VERSION=v2
|
||||||
|
|||||||
+50
-14
@@ -3,27 +3,43 @@ version: "3.8"
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
app:
|
app:
|
||||||
image: plausible/analytics:v2.0.0
|
image: ghcr.io/plausible/community-edition:v2.1.0
|
||||||
command: sh -c "sleep 10 && /entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run"
|
entrypoint: /plausible_entrypoint.sh
|
||||||
depends_on:
|
depends_on:
|
||||||
- db
|
- db
|
||||||
- plausible_events_db
|
- events
|
||||||
environment:
|
environment:
|
||||||
- BASE_URL=https://$DOMAIN
|
- BASE_URL=https://$DOMAIN
|
||||||
- SECRET_KEY_BASE
|
- SECRET_KEY_BASE
|
||||||
- DATABASE_URL=postgres://plausible:plausible@${STACK_NAME}_db:5432/plausible
|
- DATABASE_URL=postgres://plausible:plausible@${STACK_NAME}_db:5432/plausible
|
||||||
- CLICKHOUSE_DATABASE_URL=http://${STACK_NAME}_plausible_events_db:8123/plausible_events_db
|
- CLICKHOUSE_DATABASE_URL=http://${STACK_NAME}_events:8123/plausible_events_db
|
||||||
|
- MAILER_ADAPTER
|
||||||
- SMTP_HOST_ADDR
|
- SMTP_HOST_ADDR
|
||||||
- MAILER_EMAIL
|
- MAILER_EMAIL
|
||||||
|
- MAILER_NAME
|
||||||
- SMTP_HOST_PORT
|
- SMTP_HOST_PORT
|
||||||
- SMTP_USER_NAME
|
- SMTP_USER_NAME
|
||||||
- SMTP_USER_PWD
|
- SMTP_USER_PWD
|
||||||
- SMTP_HOST_SSL_ENABLED
|
- SMTP_HOST_SSL_ENABLED
|
||||||
- DISABLE_REGISTRATION
|
- DISABLE_REGISTRATION
|
||||||
- DISABLE_AUTH
|
- LOG_LEVEL
|
||||||
|
secrets:
|
||||||
|
- totp_secret
|
||||||
|
- key_base
|
||||||
|
- smtp_password
|
||||||
|
configs:
|
||||||
|
- source: plausible_entrypoint
|
||||||
|
target: /plausible_entrypoint.sh
|
||||||
|
mode: 0555
|
||||||
networks:
|
networks:
|
||||||
- proxy
|
- proxy
|
||||||
- internal
|
- internal
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://127.0.0.1:8000"]
|
||||||
|
interval: 15s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 10
|
||||||
|
start_period: 15s
|
||||||
deploy:
|
deploy:
|
||||||
restart_policy:
|
restart_policy:
|
||||||
# `any`, not `on-failure`: a restore disrupts postgres under the app and Erlang then
|
# `any`, not `on-failure`: a restore disrupts postgres under the app and Erlang then
|
||||||
@@ -66,15 +82,15 @@ services:
|
|||||||
backupbot.restore: "true"
|
backupbot.restore: "true"
|
||||||
backupbot.restore.post-hook: "/pg_backup.sh restore"
|
backupbot.restore.post-hook: "/pg_backup.sh restore"
|
||||||
|
|
||||||
plausible_events_db:
|
events:
|
||||||
image: clickhouse/clickhouse-server:23.4.2.11-alpine
|
image: clickhouse/clickhouse-server:24.3.3.102-alpine
|
||||||
volumes:
|
volumes:
|
||||||
- event-data:/var/lib/clickhouse
|
- event-data:/var/lib/clickhouse
|
||||||
entrypoint: /custom-entrypoint.sh
|
entrypoint: /custom-entrypoint.sh
|
||||||
configs:
|
configs:
|
||||||
- source: clickhouse-config
|
- source: clickhouse_config
|
||||||
target: /etc/clickhouse-server/config.d/logging.xml
|
target: /etc/clickhouse-server/config.d/logging.xml
|
||||||
- source: clickhouse-user-config
|
- source: clickhouse_user_config
|
||||||
target: /etc/clickhouse-server/users.d/clickhouse-user-config.xml
|
target: /etc/clickhouse-server/users.d/clickhouse-user-config.xml
|
||||||
- source: clickhouse_entrypoint
|
- source: clickhouse_entrypoint
|
||||||
target: /custom-entrypoint.sh
|
target: /custom-entrypoint.sh
|
||||||
@@ -84,6 +100,12 @@ services:
|
|||||||
mode: 0555
|
mode: 0555
|
||||||
networks:
|
networks:
|
||||||
- internal
|
- internal
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://127.0.0.1:8123/ping || exit 1"]
|
||||||
|
interval: 15s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 10
|
||||||
|
start_period: 15s
|
||||||
deploy:
|
deploy:
|
||||||
labels:
|
labels:
|
||||||
backupbot.backup: "true"
|
backupbot.backup: "true"
|
||||||
@@ -103,11 +125,14 @@ networks:
|
|||||||
internal:
|
internal:
|
||||||
|
|
||||||
configs:
|
configs:
|
||||||
clickhouse-config:
|
plausible_entrypoint:
|
||||||
name: ${STACK_NAME}_clickhouse_config_${CLICKHOUSE_CONF_VERSION}
|
name: ${STACK_NAME}_plausible_entrypoint_${PLAUSIBLE_ENTRYPOINT_VERSION}
|
||||||
|
file: plausible_entrypoint.sh
|
||||||
|
clickhouse_config:
|
||||||
|
name: ${STACK_NAME}_clickhouse_config_${CLICKHOUSE_CONFIG_VERSION}
|
||||||
file: clickhouse-config.xml
|
file: clickhouse-config.xml
|
||||||
clickhouse-user-config:
|
clickhouse_user_config:
|
||||||
name: ${STACK_NAME}_clickhouse_user_config_${CLICKHOUSE_USER_CONF_VERSION}
|
name: ${STACK_NAME}_clickhouse_user_config_${CLICKHOUSE_USER_CONFIG_VERSION}
|
||||||
file: clickhouse-user-config.xml
|
file: clickhouse-user-config.xml
|
||||||
clickhouse_entrypoint:
|
clickhouse_entrypoint:
|
||||||
name: ${STACK_NAME}_clickhouse_entrypoint_${CLICKHOUSE_ENTRYPOINT_VERSION}
|
name: ${STACK_NAME}_clickhouse_entrypoint_${CLICKHOUSE_ENTRYPOINT_VERSION}
|
||||||
@@ -116,5 +141,16 @@ configs:
|
|||||||
name: ${STACK_NAME}_pg_backup_${PG_BACKUP_VERSION}
|
name: ${STACK_NAME}_pg_backup_${PG_BACKUP_VERSION}
|
||||||
file: pg_backup.sh
|
file: pg_backup.sh
|
||||||
clickhouse_backup:
|
clickhouse_backup:
|
||||||
name: ${STACK_NAME}_clickhouse_backup_${CLICKHOUSE_BACKUP_SCRIPT_VERSION}
|
name: ${STACK_NAME}_clickhouse_backup_${CLICKHOUSE_BACKUP_VERSION}
|
||||||
file: clickhouse_backup.sh
|
file: clickhouse_backup.sh
|
||||||
|
|
||||||
|
secrets:
|
||||||
|
totp_secret:
|
||||||
|
name: ${STACK_NAME}_totp_secret_${SECRET_TOTP_VAULT_KEY_VERSION}
|
||||||
|
external: true
|
||||||
|
key_base:
|
||||||
|
name: ${STACK_NAME}_key_base_${SECRET_KEY_BASE_VERSION}
|
||||||
|
external: true
|
||||||
|
smtp_password:
|
||||||
|
name: ${STACK_NAME}_smtp_password_${SECRET_SMTP_PASSWORD_VERSION}
|
||||||
|
external: true
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
CLICKHOUSE_BACKUP_VERSION=2.4.2
|
CLICKHOUSE_BACKUP_VERSION=2.8.1
|
||||||
|
|
||||||
ARCH=$(uname -m)
|
ARCH=$(uname -m)
|
||||||
if [[ $ARCH =~ "aarch64" ]]; then
|
if [[ $ARCH =~ "aarch64" ]]; then
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
[ -f /run/secrets/totp_secret ] && export TOTP_VAULT_KEY="$(cat /run/secrets/totp_secret)"
|
||||||
|
[ -f /run/secrets/key_base ] && export SECRET_KEY_BASE="$(cat /run/secrets/key_base)"
|
||||||
|
[ -f /run/secrets/smtp_password ] && export SMTP_USER_PWD="$(cat /run/secrets/smtp_password)"
|
||||||
|
|
||||||
|
sh -c "sleep 10 && /entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run"
|
||||||
Reference in New Issue
Block a user