From 1653fcbddc1ea82275b5a1b17238a1216fa90264 Mon Sep 17 00:00:00 2001 From: christiankolbow Date: Sun, 18 Aug 2024 11:58:55 +0200 Subject: [PATCH 1/4] feat: add ntfy template --- public/svgs/ntfy.svg | 1 + templates/compose/ntfy.yaml | 26 ++++++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 public/svgs/ntfy.svg create mode 100644 templates/compose/ntfy.yaml diff --git a/public/svgs/ntfy.svg b/public/svgs/ntfy.svg new file mode 100644 index 000000000..9e5b5136f --- /dev/null +++ b/public/svgs/ntfy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/templates/compose/ntfy.yaml b/templates/compose/ntfy.yaml new file mode 100644 index 000000000..ec8c39d28 --- /dev/null +++ b/templates/compose/ntfy.yaml @@ -0,0 +1,26 @@ +# documentation: https://docs.ntfy.sh/ +# slogan: ntfy is a simple HTTP-based pub-sub notification service. It allows you to send notifications to your phone or desktop via scripts from any computer, and/or using a REST API. +# tags: ntfy, notification, push notification, pub-sub, notify +# logo: svgs/ntfy.svg +# port: 80 + +services: + ntfy: + image: binwiederhier/ntfy + container_name: ntfy + command: + - serve + environment: + - SERVICE_FQDN_NTFY + - TZ=Europe/Berlin + user: 1000:1000 + volumes: + - ntfy-cache:/var/cache/ntfy + - ntfy:/etc/ntfy + healthcheck: + test: ["CMD-SHELL", "wget -q --tries=1 http://localhost:80/v1/health -O - | grep -Eo '\"healthy\"\\s*:\\s*true' || exit 1"] + interval: 60s + timeout: 10s + retries: 3 + start_period: 40s + restart: unless-stopped From 58831b89925b4d5cf26c46fb6324bce2e4059e00 Mon Sep 17 00:00:00 2001 From: christiankolbow Date: Sun, 18 Aug 2024 14:11:24 +0200 Subject: [PATCH 2/4] fix: signup --- templates/compose/ntfy.yaml | 37 +++++++++++++++++++++++++++++++------ 1 file changed, 31 insertions(+), 6 deletions(-) diff --git a/templates/compose/ntfy.yaml b/templates/compose/ntfy.yaml index ec8c39d28..850238427 100644 --- a/templates/compose/ntfy.yaml +++ b/templates/compose/ntfy.yaml @@ -11,14 +11,39 @@ services: command: - serve environment: - - SERVICE_FQDN_NTFY - - TZ=Europe/Berlin - user: 1000:1000 + - TZ=${TZ:-UTC} + - 'NTFY_BASE_URL=${SERVICE_FQDN_NTFY}' + - NTFY_CACHE_FILE=/var/cache/ntfy/cache.db + - NTFY_AUTH_FILE=/var/lib/ntfy/auth.db + - NTFY_AUTH_DEFAULT_ACCESS=read-write + - 'NTFY_UPSTREAM_BASE_URL=https://ntfy.sh' + - NTFY_ENABLE_SIGNUP=${NTFY_ENABLE_SIGNUP:-true} + - NTFY_ENABLE_LOGIN=${NTFY_ENABLE_LOGIN:-true} + - NTFY_CACHE_DURATION=${NTFY_CACHE_DURATION:-24h} + - NTFY_ATTACHMENT_TOTAL_SIZE_LIMIT=${NTFY_ATTACHMENT_TOTAL_SIZE_LIMIT:-1G} + - NTFY_ATTACHMENT_FILE_SIZE_LIMIT=${NTFY_ATTACHMENT_FILE_SIZE_LIMIT:-10M} + - NTFY_ATTACHMENT_EXPIRY_DURATION=${NTFY_ATTACHMENT_EXPIRY_DURATION:-24h} + - NTFY_SMTP_SENDER_ADDR=${NTFY_SMTP_SENDER_ADDR:-smtp.deine-domain.de} + - NTFY_SMTP_SENDER_USER=${NTFY_SMTP_SENDER_USER:-no-reply@de} + - NTFY_SMTP_SENDER_PASS=${NTFY_SMTP_SENDER_PASS:-password} + - NTFY_SMTP_SENDER_FROM=${NTFY_SMTP_SENDER_FROM:-no-reply@de} + - NTFY_KEEPALIVE_INTERVAL=${NTFY_KEEPALIVE_INTERVAL:-5m} + - NTFY_MANAGER_INTERVAL=${NTFY_MANAGER_INTERVAL:-5m} + - NTFY_VISITOR_MESSAGE_DAILY_LIMIT=${NTFY_VISITOR_MESSAGE_DAILY_LIMIT:-100} + - NTFY_VISITOR_ATTACHMENT_DAILY_BANDWIDTH_LIMIT=${NTFY_VISITOR_ATTACHMENT_DAILY_BANDWIDTH_LIMIT:-1G} + - NTFY_UPSTREAM_BASE_URL=${SERVICE_FQDN_NTFY} + - NTFY_UPSTREAM_ACCESS_TOKEN=${UPSTREAM_ACCESS_TOKEN} + - NTFY_AUTH_DEFAULT_ACCESS=${NTFY_AUTH_DEFAULT_ACCESS:-read-write} + - NTFY_WEB_PUSH_PUBLIC_KEY=${NTFY_WEB_PUSH_PUBLIC_KEY} + - NTFY_WEB_PUSH_PRIVATE_KEY=${NTFY_WEB_PUSH_PRIVATE_KEY} + - NTFY_WEB_PUSH_EMAIL_ADDRESS=${NTFY_WEB_PUSH_EMAIL_ADDRESS} volumes: - - ntfy-cache:/var/cache/ntfy - - ntfy:/etc/ntfy + - ./cache:/var/cache/ntfy + - ./db:/var/lib/ntfy/ healthcheck: - test: ["CMD-SHELL", "wget -q --tries=1 http://localhost:80/v1/health -O - | grep -Eo '\"healthy\"\\s*:\\s*true' || exit 1"] + test: + - CMD-SHELL + - 'wget -q --tries=1 http://localhost:80/v1/health -O - | grep -Eo ''"healthy"\s*:\s*true'' || exit 1' interval: 60s timeout: 10s retries: 3 From d5e6a643aaa0b9b3a67be1b556ccd1277f2b70bd Mon Sep 17 00:00:00 2001 From: christiankolbow Date: Sun, 18 Aug 2024 14:16:14 +0200 Subject: [PATCH 3/4] cleanup --- templates/compose/ntfy.yaml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/templates/compose/ntfy.yaml b/templates/compose/ntfy.yaml index 850238427..06187a368 100644 --- a/templates/compose/ntfy.yaml +++ b/templates/compose/ntfy.yaml @@ -12,11 +12,11 @@ services: - serve environment: - TZ=${TZ:-UTC} - - 'NTFY_BASE_URL=${SERVICE_FQDN_NTFY}' + - NTFY_BASE_URL=${SERVICE_FQDN_NTFY} - NTFY_CACHE_FILE=/var/cache/ntfy/cache.db - NTFY_AUTH_FILE=/var/lib/ntfy/auth.db - NTFY_AUTH_DEFAULT_ACCESS=read-write - - 'NTFY_UPSTREAM_BASE_URL=https://ntfy.sh' + - NTFY_UPSTREAM_BASE_URL=${UPSTREAM_BASE_URL:-https://ntfy.sh} - NTFY_ENABLE_SIGNUP=${NTFY_ENABLE_SIGNUP:-true} - NTFY_ENABLE_LOGIN=${NTFY_ENABLE_LOGIN:-true} - NTFY_CACHE_DURATION=${NTFY_CACHE_DURATION:-24h} @@ -41,9 +41,7 @@ services: - ./cache:/var/cache/ntfy - ./db:/var/lib/ntfy/ healthcheck: - test: - - CMD-SHELL - - 'wget -q --tries=1 http://localhost:80/v1/health -O - | grep -Eo ''"healthy"\s*:\s*true'' || exit 1' + test: ["CMD-SHELL", "wget -q --tries=1 http://localhost:80/v1/health -O - | grep -Eo '\"healthy\"\\s*:\\s*true' || exit 1"] interval: 60s timeout: 10s retries: 3 From 2fc0ce172050e530b415463d15eccbfab8e68ff5 Mon Sep 17 00:00:00 2001 From: christiankolbow Date: Sun, 18 Aug 2024 14:18:07 +0200 Subject: [PATCH 4/4] remove duplicated env --- templates/compose/ntfy.yaml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/templates/compose/ntfy.yaml b/templates/compose/ntfy.yaml index 06187a368..3914136a5 100644 --- a/templates/compose/ntfy.yaml +++ b/templates/compose/ntfy.yaml @@ -15,7 +15,6 @@ services: - NTFY_BASE_URL=${SERVICE_FQDN_NTFY} - NTFY_CACHE_FILE=/var/cache/ntfy/cache.db - NTFY_AUTH_FILE=/var/lib/ntfy/auth.db - - NTFY_AUTH_DEFAULT_ACCESS=read-write - NTFY_UPSTREAM_BASE_URL=${UPSTREAM_BASE_URL:-https://ntfy.sh} - NTFY_ENABLE_SIGNUP=${NTFY_ENABLE_SIGNUP:-true} - NTFY_ENABLE_LOGIN=${NTFY_ENABLE_LOGIN:-true} @@ -23,7 +22,7 @@ services: - NTFY_ATTACHMENT_TOTAL_SIZE_LIMIT=${NTFY_ATTACHMENT_TOTAL_SIZE_LIMIT:-1G} - NTFY_ATTACHMENT_FILE_SIZE_LIMIT=${NTFY_ATTACHMENT_FILE_SIZE_LIMIT:-10M} - NTFY_ATTACHMENT_EXPIRY_DURATION=${NTFY_ATTACHMENT_EXPIRY_DURATION:-24h} - - NTFY_SMTP_SENDER_ADDR=${NTFY_SMTP_SENDER_ADDR:-smtp.deine-domain.de} + - NTFY_SMTP_SENDER_ADDR=${NTFY_SMTP_SENDER_ADDR:-smtp.your-domain.de} - NTFY_SMTP_SENDER_USER=${NTFY_SMTP_SENDER_USER:-no-reply@de} - NTFY_SMTP_SENDER_PASS=${NTFY_SMTP_SENDER_PASS:-password} - NTFY_SMTP_SENDER_FROM=${NTFY_SMTP_SENDER_FROM:-no-reply@de} @@ -31,7 +30,6 @@ services: - NTFY_MANAGER_INTERVAL=${NTFY_MANAGER_INTERVAL:-5m} - NTFY_VISITOR_MESSAGE_DAILY_LIMIT=${NTFY_VISITOR_MESSAGE_DAILY_LIMIT:-100} - NTFY_VISITOR_ATTACHMENT_DAILY_BANDWIDTH_LIMIT=${NTFY_VISITOR_ATTACHMENT_DAILY_BANDWIDTH_LIMIT:-1G} - - NTFY_UPSTREAM_BASE_URL=${SERVICE_FQDN_NTFY} - NTFY_UPSTREAM_ACCESS_TOKEN=${UPSTREAM_ACCESS_TOKEN} - NTFY_AUTH_DEFAULT_ACCESS=${NTFY_AUTH_DEFAULT_ACCESS:-read-write} - NTFY_WEB_PUSH_PUBLIC_KEY=${NTFY_WEB_PUSH_PUBLIC_KEY}