From 84b930a913e14a591b0b9f8b54384748885a136f Mon Sep 17 00:00:00 2001 From: Diptesh Choudhuri Date: Wed, 14 May 2025 18:06:53 +0530 Subject: [PATCH] feat(service): Add Ryot service (#5232) --- public/svgs/ryot.svg | 14 +++++++++++++ templates/compose/ryot.yaml | 41 +++++++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 public/svgs/ryot.svg create mode 100644 templates/compose/ryot.yaml diff --git a/public/svgs/ryot.svg b/public/svgs/ryot.svg new file mode 100644 index 000000000..410f22171 --- /dev/null +++ b/public/svgs/ryot.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/templates/compose/ryot.yaml b/templates/compose/ryot.yaml new file mode 100644 index 000000000..c6472b789 --- /dev/null +++ b/templates/compose/ryot.yaml @@ -0,0 +1,41 @@ +# documentation: https://github.com/ignisda/ryot +# slogan: Roll your own tracker! Ryot is a self-hosted platform for tracking various aspects of life such as media consumption, fitness activities, and more. +# tags: rss, reader, self-hosted, automation, tracker, media, fitness +# logo: svgs/ryot.svg +# port: 8000 + +services: + ryot: + image: ignisda/ryot:v8 + pull_policy: always + environment: + - SERVICE_FQDN_RYOT_8000 + - DATABASE_URL=postgres://$SERVICE_USER_POSTGRES:$SERVICE_PASSWORD_POSTGRES@postgresql:5432/$POSTGRES_DB + - SERVER_ADMIN_ACCESS_TOKEN=$SERVICE_PASSWORD_64_RYOT + - TZ=${TZ:-Europe/Amsterdam} + depends_on: + postgresql: + condition: service_healthy + healthcheck: + test: ["CMD", "curl", "-f", "http://127.0.0.1:8000/health"] + interval: 5s + timeout: 20s + retries: 10 + + postgresql: + image: postgres:16-alpine + volumes: + - postgresql-data:/var/lib/postgresql/data + environment: + - POSTGRES_USER=$SERVICE_USER_POSTGRES + - POSTGRES_PASSWORD=$SERVICE_PASSWORD_POSTGRES + - POSTGRES_DB=${POSTGRES_DB:-ryot} + - TZ=${TZ:-Europe/Amsterdam} + healthcheck: + test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"] + interval: 5s + timeout: 20s + retries: 10 + +volumes: + postgresql-data: