nixos-config/hosts/voyager/services/stash.nix

55 lines
1.3 KiB
Nix

{ config, pkgs, lib, ... }:
let
host = "127.0.1.2";
port = "5008";
# Some uid I will never use for anything else
uid = config.ids.uids.amule;
gid = config.ids.gids.amule;
in {
sops.secrets."transmission/vpncreds" = {
owner = "transmission";
group = "transmission";
};
users.users.stash = {
inherit uid;
group = "stash";
isSystemUser = true;
useDefaultShell = true;
description = "Stash media hosting platform";
};
users.groups.stash = {
inherit gid;
};
# Stash media hosting platform
virtualisation.oci-containers.containers.stash = {
image = "stashapp/stash";
ports = [ "${host}:${port}:9999" ];
volumes = [
"/var/lib/stash/config:/root/.stash"
"/var/lib/stash/cache:/cache"
"/tank/media/stash/data:/data"
"/tank/media/stash/other/metadata:/metadata"
"/tank/media/stash/other/blobs:/blobs"
"/tank/media/stash/other/generated:/generated"
];
environment = {
STASH_STASH = "/data/";
STASH_GENERATED = "/generated/";
STASH_METADATA = "/metadata";
STASH_CACHE = "/cache";
STASH_PORT = "9999";
};
environmentFiles = [
];
};
services.nginx.virtualHosts."stash.home.feal.no" = {
locations."/" = {
proxyPass = "http://${host}:${port}";
};
};
}