dotfiles.nix/nixos/viridian/containers/prowlarr.nix

44 lines
1,020 B
Nix
Raw Normal View History

2024-08-08 09:02:42 +08:00
{...}: let
2024-06-16 23:08:52 +08:00
port = "9696";
2024-08-08 09:02:42 +08:00
in {
2024-01-23 09:45:42 +08:00
virtualisation.oci-containers.containers = {
# Indexer manager/proxy built on the popular arr .net/reactjs base stack to integrate with your various PVR apps.
prowlarr = {
autoStart = true;
2024-08-11 20:05:27 +08:00
image = "ghcr.io/hotio/prowlarr:release-1.21.2.4649";
2024-01-23 09:45:42 +08:00
ports = [
2024-06-16 23:08:52 +08:00
"${port}:9696/tcp" # WebUI
2024-01-23 09:45:42 +08:00
];
volumes = [
# Container data
"/srv/containers/prowlarr:/config:rw"
];
2024-06-16 23:08:52 +08:00
environment = {
PUID = "1000";
PGID = "100";
};
2024-01-23 09:45:42 +08:00
extraOptions = [
"--network=media-stack"
];
};
};
services.traefik.dynamicConfigOptions.http.routers = {
prowlarr = {
rule = "Host(`prowlarr.kanto.dev`)";
entryPoints = [
"websecure"
];
middlewares = [
2024-07-08 22:08:39 +08:00
"internal"
];
service = "prowlarr";
};
};
2024-08-08 09:02:42 +08:00
services.traefik.dynamicConfigOptions.http.services = {
prowlarr.loadBalancer.servers = [
2024-08-08 09:02:42 +08:00
{url = "http://127.0.0.1:${port}";}
];
};
2024-01-23 09:45:42 +08:00
}