my-homelab-configs/archive/apps/arr-stack/web-app.yaml

539 lines
11 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: flaresolverr
namespace: arr-stack
labels:
app: flaresolverr
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: flaresolverr
template:
metadata:
labels:
app: flaresolverr
spec:
nodeSelector:
kubernetes.io/os: linux
containers:
- name: flaresolverr
image: ghcr.io/flaresolverr/flaresolverr:latest
imagePullPolicy: IfNotPresent
env:
- name: LOG_LEVEL
value: info
- name: TZ
value: America/Mexico_City
ports:
- containerPort: 8191
name: http
resources:
requests:
cpu: 50m
memory: 256Mi
limits:
memory: 1Gi
---
apiVersion: v1
kind: Service
metadata:
name: flaresolverr
namespace: arr-stack
spec:
selector:
app: flaresolverr
ports:
- port: 8191
targetPort: http
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: prowlarr
namespace: arr-stack
labels:
app: prowlarr
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: prowlarr
template:
metadata:
labels:
app: prowlarr
spec:
nodeSelector:
kubernetes.io/os: linux
securityContext:
fsGroup: 1000
fsGroupChangePolicy: OnRootMismatch
containers:
- name: prowlarr
image: lscr.io/linuxserver/prowlarr:latest
imagePullPolicy: IfNotPresent
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: America/Mexico_City
ports:
- containerPort: 9696
name: http
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
memory: 1Gi
volumeMounts:
- name: arr-config
mountPath: /config
subPath: prowlarr
volumes:
- name: arr-config
persistentVolumeClaim:
claimName: arr-config
---
apiVersion: v1
kind: Service
metadata:
name: prowlarr
namespace: arr-stack
spec:
selector:
app: prowlarr
ports:
- port: 9696
targetPort: http
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: radarr
namespace: arr-stack
labels:
app: radarr
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: radarr
template:
metadata:
labels:
app: radarr
spec:
nodeSelector:
kubernetes.io/os: linux
securityContext:
fsGroup: 1000
fsGroupChangePolicy: OnRootMismatch
containers:
- name: radarr
image: lscr.io/linuxserver/radarr:latest
imagePullPolicy: IfNotPresent
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: America/Mexico_City
ports:
- containerPort: 7878
name: http
resources:
requests:
cpu: 100m
memory: 512Mi
limits:
memory: 2Gi
volumeMounts:
- name: arr-config
mountPath: /config
subPath: radarr
- name: arr-data
mountPath: /data
volumes:
- name: arr-config
persistentVolumeClaim:
claimName: arr-config
- name: arr-data
persistentVolumeClaim:
claimName: arr-data
---
apiVersion: v1
kind: Service
metadata:
name: radarr
namespace: arr-stack
spec:
selector:
app: radarr
ports:
- port: 7878
targetPort: http
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: sonarr
namespace: arr-stack
labels:
app: sonarr
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: sonarr
template:
metadata:
labels:
app: sonarr
spec:
nodeSelector:
kubernetes.io/os: linux
securityContext:
fsGroup: 1000
fsGroupChangePolicy: OnRootMismatch
containers:
- name: sonarr
image: lscr.io/linuxserver/sonarr:latest
imagePullPolicy: IfNotPresent
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: America/Mexico_City
ports:
- containerPort: 8989
name: http
resources:
requests:
cpu: 100m
memory: 512Mi
limits:
memory: 2Gi
volumeMounts:
- name: arr-config
mountPath: /config
subPath: sonarr
- name: arr-data
mountPath: /data
volumes:
- name: arr-config
persistentVolumeClaim:
claimName: arr-config
- name: arr-data
persistentVolumeClaim:
claimName: arr-data
---
apiVersion: v1
kind: Service
metadata:
name: sonarr
namespace: arr-stack
spec:
selector:
app: sonarr
ports:
- port: 8989
targetPort: http
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: qbittorrent
namespace: arr-stack
labels:
app: qbittorrent
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: qbittorrent
template:
metadata:
labels:
app: qbittorrent
spec:
nodeSelector:
kubernetes.io/os: linux
securityContext:
fsGroup: 1000
fsGroupChangePolicy: OnRootMismatch
containers:
- name: qbittorrent
image: lscr.io/linuxserver/qbittorrent:latest
imagePullPolicy: IfNotPresent
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: America/Mexico_City
- name: WEBUI_PORT
value: "8080"
ports:
- containerPort: 8080
name: http
resources:
requests:
cpu: 100m
memory: 512Mi
limits:
memory: 2Gi
volumeMounts:
- name: arr-config
mountPath: /config
subPath: qbittorrent
- name: arr-data
mountPath: /data
volumes:
- name: arr-config
persistentVolumeClaim:
claimName: arr-config
- name: arr-data
persistentVolumeClaim:
claimName: arr-data
---
apiVersion: v1
kind: Service
metadata:
name: qbittorrent
namespace: arr-stack
spec:
selector:
app: qbittorrent
ports:
- port: 8080
targetPort: http
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: kapowarr
namespace: arr-stack
labels:
app: kapowarr
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: kapowarr
template:
metadata:
labels:
app: kapowarr
spec:
nodeSelector:
kubernetes.io/os: linux
securityContext:
fsGroup: 1000
fsGroupChangePolicy: OnRootMismatch
containers:
- name: kapowarr
image: mrcas/kapowarr:latest
imagePullPolicy: IfNotPresent
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: America/Mexico_City
ports:
- containerPort: 5656
name: http
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
memory: 1Gi
volumeMounts:
- name: arr-config
mountPath: /app/db
subPath: kapowarr
- name: arr-data
mountPath: /app/temp_downloads
subPath: torrents
- name: arr-data
mountPath: /comics
subPath: media/comics
volumes:
- name: arr-config
persistentVolumeClaim:
claimName: arr-config
- name: arr-data
persistentVolumeClaim:
claimName: arr-data
---
apiVersion: v1
kind: Service
metadata:
name: kapowarr
namespace: arr-stack
spec:
selector:
app: kapowarr
ports:
- port: 5656
targetPort: http
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: suwayomi
namespace: arr-stack
labels:
app: suwayomi
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: suwayomi
template:
metadata:
labels:
app: suwayomi
spec:
nodeSelector:
kubernetes.io/os: linux
securityContext:
fsGroup: 1000
fsGroupChangePolicy: OnRootMismatch
containers:
- name: suwayomi
image: ghcr.io/suwayomi/suwayomi-server:preview
imagePullPolicy: IfNotPresent
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: America/Mexico_City
ports:
- containerPort: 4567
name: http
resources:
requests:
cpu: 100m
memory: 512Mi
limits:
memory: 2Gi
volumeMounts:
- name: arr-config
mountPath: /home/suwayomi/.local/share/Suwayomi-Server
subPath: suwayomi
- name: arr-data
mountPath: /data/manga
subPath: media/manga
volumes:
- name: arr-config
persistentVolumeClaim:
claimName: arr-config
- name: arr-data
persistentVolumeClaim:
claimName: arr-data
---
apiVersion: v1
kind: Service
metadata:
name: suwayomi
namespace: arr-stack
spec:
selector:
app: suwayomi
ports:
- port: 4567
targetPort: http
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: maintainerr
namespace: arr-stack
labels:
app: maintainerr
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: maintainerr
template:
metadata:
labels:
app: maintainerr
spec:
nodeSelector:
kubernetes.io/os: linux
securityContext:
fsGroup: 1000
fsGroupChangePolicy: OnRootMismatch
containers:
- name: maintainerr
image: ghcr.io/jorenn92/maintainerr:latest
imagePullPolicy: IfNotPresent
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: America/Mexico_City
ports:
- containerPort: 6246
name: http
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
memory: 1Gi
volumeMounts:
- name: arr-config
mountPath: /opt/data
subPath: maintainerr
volumes:
- name: arr-config
persistentVolumeClaim:
claimName: arr-config
---
apiVersion: v1
kind: Service
metadata:
name: maintainerr
namespace: arr-stack
spec:
selector:
app: maintainerr
ports:
- port: 6246
targetPort: http