From 44fa1152bfa54bfaf4da66e54326c3014cb3ba04 Mon Sep 17 00:00:00 2001 From: Andreas Zweili Date: Thu, 10 Nov 2022 23:52:02 +0100 Subject: [PATCH] Add additional containers for ttrss --- modules/ttrss-postgres/default.nix | 49 +++++++++++++++++++++++++----- 1 file changed, 41 insertions(+), 8 deletions(-) diff --git a/modules/ttrss-postgres/default.nix b/modules/ttrss-postgres/default.nix index 8702336..2fa290c 100644 --- a/modules/ttrss-postgres/default.nix +++ b/modules/ttrss-postgres/default.nix @@ -1,4 +1,14 @@ { custom, domain }: { config, ... }: +let + ttrssEnvironment = { + TZ = "Europe/Zurich"; + TTRSS_DB_USER = "ttrss"; + TTRSS_DB_NAME = "ttrssdb"; + TTRSS_DB_HOST = "host.docker.internal"; + TTRSS_SELF_URL_PATH = "https://${domain}/tt-rss"; + TTRSS_SESSION_COOKIE_LIFETIME = "604800"; + }; +in { imports = [ (import "${custom.inputs.self}/modules/nginx-fpm" { @@ -25,14 +35,7 @@ containers."ttrss" = { image = "ghcr.io/nebucatnetzer/tt-rss-aarch64/ttrss-fpm-pgsql-static"; autoStart = true; - environment = { - TZ = "Europe/Zurich"; - TTRSS_DB_USER = "ttrss"; - TTRSS_DB_NAME = "ttrssdb"; - TTRSS_DB_HOST = "host.docker.internal"; - TTRSS_SELF_URL_PATH = "https://${domain}/tt-rss"; - TTRSS_SESSION_COOKIE_LIFETIME = "604800"; - }; + environment = ttrssEnvironment; environmentFiles = [ config.age.secrets.ttrssEnv.path ]; ports = [ "9000:9000" @@ -42,6 +45,36 @@ ]; extraOptions = [ "--add-host=host.docker.internal:host-gateway" ]; }; + containers."backup" = { + image = "ghcr.io/nebucatnetzer/tt-rss-aarch64/ttrss-fpm-pgsql-static"; + autoStart = true; + environment = ttrssEnvironment; + environmentFiles = [ config.age.secrets.ttrssEnv.path ]; + ports = [ + "9000:9000" + ]; + volumes = [ + "/var/lib/ttrss/html:/var/www/html" + "/var/lib/ttrss/backup:/backup" + ]; + cmd = [ "/opt/tt-rss/dcron.sh -f" ]; + extraOptions = [ "--add-host=host.docker.internal:host-gateway" ]; + }; + containers."updater" = { + image = "ghcr.io/nebucatnetzer/tt-rss-aarch64/ttrss-fpm-pgsql-static"; + autoStart = true; + environment = ttrssEnvironment; + environmentFiles = [ config.age.secrets.ttrssEnv.path ]; + ports = [ + "9000:9000" + ]; + volumes = [ + "/var/lib/ttrss/html:/var/www/html" + ]; + cmd = [ "/opt/tt-rss/updater.sh" ]; + dependsOn = [ "ttrss" ]; + extraOptions = [ "--add-host=host.docker.internal:host-gateway" ]; + }; }; services.nginx.virtualHosts."${domain}".locations = {