Move overseerr to pi cluster
This commit is contained in:
parent
0d3dda6646
commit
91ae8b665f
78
homelab/overseerr.nix
Normal file
78
homelab/overseerr.nix
Normal file
|
@ -0,0 +1,78 @@
|
|||
let
|
||||
appName = "overseerr";
|
||||
appImage = "sctx/overseerr";
|
||||
in
|
||||
{
|
||||
kubernetes.resources.services.overseerr = {
|
||||
spec = {
|
||||
selector.app = appName;
|
||||
ports.http = {
|
||||
port = 5055;
|
||||
targetPort = 5055;
|
||||
};
|
||||
};
|
||||
};
|
||||
kubernetes.resources.statefulSets.overseerr.spec = {
|
||||
selector.matchLabels.app = appName;
|
||||
serviceName = appName;
|
||||
template = {
|
||||
metadata.labels.app = appName;
|
||||
spec = {
|
||||
volumes = {
|
||||
config.configMap.name = "overseerr";
|
||||
};
|
||||
containers = {
|
||||
overseerr = {
|
||||
image = appImage;
|
||||
volumeMounts = [
|
||||
{ name = "data"; mountPath = "/app/config"; }
|
||||
];
|
||||
ports.metrics.containerPort = 5055;
|
||||
resources = {
|
||||
requests = {
|
||||
cpu = "50m";
|
||||
memory = "32Mi";
|
||||
};
|
||||
limits = {
|
||||
cpu = "500m";
|
||||
memory = "256Mi";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
volumeClaimTemplates = [
|
||||
{ metadata.name = "data";
|
||||
spec = {
|
||||
storageClassName = "nfs-client";
|
||||
accessModes = [ "ReadWriteOnce" ];
|
||||
resources.requests.storage = "1Gi";
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
kubernetes.resources.ingresses.overseerr = {
|
||||
metadata = {
|
||||
name = appName;
|
||||
annotations = {
|
||||
"cert-manager.io/issuer" = "le-issuer";
|
||||
};
|
||||
};
|
||||
spec = {
|
||||
tls = [ { hosts = [ "request-media.gmem.ca" ]; secretName = "gmem-ca-wildcard"; } ];
|
||||
rules = [
|
||||
{
|
||||
host = "request-media.gmem.ca";
|
||||
http.paths = [
|
||||
{ path = "/"; pathType = "Prefix";
|
||||
backend.service = {
|
||||
name = appName;
|
||||
port.name = "http"; };
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
|
@ -313,23 +313,6 @@
|
|||
proxyPass = "http://127.0.0.1:8973/";
|
||||
};
|
||||
};
|
||||
virtualHosts."request-media.gmem.ca" = {
|
||||
enableACME = true;
|
||||
addSSL = true;
|
||||
acmeRoot = null;
|
||||
locations."/" = {
|
||||
extraConfig =
|
||||
''
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
client_max_body_size 100M;
|
||||
'';
|
||||
proxyPass = "http://127.0.0.1:5055/";
|
||||
};
|
||||
};
|
||||
virtualHosts."flood.gmem.ca" = {
|
||||
enableACME = true;
|
||||
addSSL = true;
|
||||
|
|
Loading…
Reference in a new issue