From ab8012fbaa8582aab8d6c75330518e4ace15f4e8 Mon Sep 17 00:00:00 2001 From: SebastianStork Date: Sat, 21 Sep 2024 00:29:04 +0200 Subject: [PATCH] Add stirling-pdf docker container --- .../docker/stirling-pdf/default.nix | 36 +++++++++++++++++++ hosts/stratus/secrets.yaml | 6 ++-- 2 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 hosts/stratus/containers/docker/stirling-pdf/default.nix diff --git a/hosts/stratus/containers/docker/stirling-pdf/default.nix b/hosts/stratus/containers/docker/stirling-pdf/default.nix new file mode 100644 index 0000000..16a1781 --- /dev/null +++ b/hosts/stratus/containers/docker/stirling-pdf/default.nix @@ -0,0 +1,36 @@ +{ + config, + pkgs, + lib, + ... +}: +let + serviceName = lib.last (lib.splitString "/" (builtins.toString ./.)); # Parent directory name + subdomain = "pdf"; + + serveConfig = builtins.toJSON { + TCP."443".HTTPS = true; + Web."${subdomain}.${config.networking.domain}:443".Handlers."/".Proxy = "http://127.0.0.1:8080"; + }; + configPath = pkgs.writeTextDir "tailscale-serve.json" serveConfig; +in +{ + virtualisation.oci-containers.containers = { + ${serviceName} = { + image = "frooodle/s-pdf:latest"; + environment = { + LANGS = "de_DE"; + SYSTEM_SHOWUPDATE = "false"; + }; + volumes = [ + "/data/stirling-pdf/tessdata:/usr/share/tessdata" + "/data/stirling-pdf/configs:/configs" + ]; + }; + + "tailscale-${serviceName}" = { + environment.TS_HOSTNAME = subdomain; + volumes = [ "${configPath}:/config" ]; + }; + }; +} diff --git a/hosts/stratus/secrets.yaml b/hosts/stratus/secrets.yaml index 6a8018e..b50cd83 100644 --- a/hosts/stratus/secrets.yaml +++ b/hosts/stratus/secrets.yaml @@ -10,6 +10,8 @@ container: onlyoffice: tailscale-auth-key: ENC[AES256_GCM,data:nxNiy9AKzspdPx3OfdT1WFjO+De1k9xHMaITZZ0y/gYCj6hsOnF9cOq1A+YV5N/zYB5RbPd9Hg77kLwfPeHYgnJklNbVMNfs,iv:ruk+riD2BVlv+gTsRDBhMB7+trvxioq7M8rUlyrG2fk=,tag:RCtXHI16EWOnl+cljqQyxg==,type:str] jwt-secret: ENC[AES256_GCM,data:cLEV5yTwzrcUWjS+RSOy4QGmB+yP24j/Bo51LCS+2yX9fpeeJ+tPAuA=,iv:4R/1YcVQjLTcEKJbQ5oq1/vUM+dc4zBLkFLSgH4wq0w=,tag:i0ub07cM9FwV2ryu+XTLbQ==,type:str] + stirling-pdf: + tailscale-auth-key: ENC[AES256_GCM,data:7V+9/D60QxsxRxGMLtgGBqrha7OEx3T7jxUmw9MOuA8l9fxqiqsbneAXRJeTfcY1acafmfweOcwcF6y+/2znQdKHEk/HSrGO,iv:eSpyPUkpOC66mT40siVJ2FcE1pDML+3q1Jpt/Zzoaac=,tag:8EuaXQV0n1VoO95O9wr3PA==,type:str] forgejo: ssh-key: ENC[AES256_GCM,data:PbPRioKPPE/sv8jceAzuV5NFSVSBNOZAejCfUJUYmhLblLSuDsZ7fdgk5+TFjf7baVPhWasUGAo588z7fqzMlTgHfT/RtwDJ4QUMaPXts68CxdZemdjVa8LbV96i9UNlCJP8Sz/7Wvc8axnmyIApAhcLBA7d9KTQn/7lXgaGs9QtDDpSSmJluQHDe1t4QG2UqV73ZZ4I1MY9nVYO9lmaKBej43247cnw8FrkeCQLx4nXuArCp88rBug0CpgY8z15eK4RWXonBjBe5TDoCOWpENyD/6uVFeQIow5TSJgKlkh1w+dj9IiCBfYBllH5xQxjsjlVpDba4A+hfoBhah+EWhK3J765UGn4ufslVMNTQeL9yD87WMa1EkYwGSCVgCTD+/BfgP4HjzgGbM0OuU2Z5t2WV/R9Dm69w+wISbcjTmqqk+q6hle0RR5SkY9bOax2AKsOkcp/k6BS9QmNnajD7qnIVgGTLEwqgWjbQJGFLEE5mSNmZU5oV2gatrbPnN609LbaH6d6Zj28l7Hwr6jH,iv:fgUklpj946AqYe5hh3gwII4CUoUXsrrk3cW2TVugm0c=,tag:ypVvK3K/lSunq2g/LFIWRA==,type:str] nextcloud: @@ -40,8 +42,8 @@ sops: aW00MUpGdXpYam5LYVFUenh2VndzcE0KT6Hfx1CYJFseFaEZxwi4Fds4v1HEFzBo FdSC6pzpZkfXso8EtSftq0lPx10GfJ6GZXYb+bCB2S9ROvUMPYDH3A== -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-09-18T19:37:12Z" - mac: ENC[AES256_GCM,data:zECcfjmDOUvCPlBzoBfxbTKuV93mDJLOw9uiRtAmwsbqRBhl1bF9Qv1DImSE4t8PzsYEYLydWcx0iYFiS65QVz6NtstC06G2QRMZvhTAku3dry2AazBTLv4ZbTXlK9PfrkjM0OU2WwpK5xDgWbuyuOTgDKY6yMcf3o3qy+4cSTo=,iv:mY1lsMWUoJrAKpZ3ly4IItlq0YGaUotmAlh0ldl9ICg=,tag:CWu35GdlmfiEIQg7h8qz+w==,type:str] + lastmodified: "2024-09-20T22:17:19Z" + mac: ENC[AES256_GCM,data:PCZldOy6JE6qqJ2NcdXzhFjTEezH1k7UZWNng/s+FGMRH1qtDZRHbXDtZ5oX/0pY+a6LafZpdi20YozrrZGZzSJKxC3m/p9NTR09PpuunNqzNQ7kRQnQklkiD/pirIHj6c7Fp+c6se0f3odurd/kwPtPHeGs7xT/qgxkI98alRE=,iv:lIvE0p+kqfSUzkbS4Tt+PEuQLKVjt5sELc0PfVrUunY=,tag:tcp14+fRxBqpbQzSn5r+uA==,type:str] pgp: [] unencrypted_suffix: _unencrypted version: 3.9.0