Sanitized mirror from private repository - 2026-04-19 08:15:48 UTC
Some checks failed
Documentation / Deploy to GitHub Pages (push) Has been cancelled
Documentation / Build Docusaurus (push) Has been cancelled

This commit is contained in:
Gitea Mirror Bot
2026-04-19 08:15:48 +00:00
commit 57b1fe47f2
1437 changed files with 363051 additions and 0 deletions

BIN
olares/plex-chart.tgz Normal file

Binary file not shown.

View File

@@ -0,0 +1,6 @@
apiVersion: v2
appVersion: 1.41.4.9463
description: Plex Media Server with NVIDIA GPU hardware transcoding
name: plex
type: application
version: 1.0.0

View File

@@ -0,0 +1,81 @@
---
olaresManifest.version: "0.10.0"
olaresManifest.type: app
apiVersion: 'v2'
metadata:
name: plex
icon: https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/plex-logo.png
description: Stream movies, TV, music, and more from your personal media library.
appid: plex
title: Plex Media Server
version: "1.0.0"
categories:
- Entertainment
entrances:
- name: plexweb
port: 32400
host: plex
title: Plex
icon: https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/plex-logo.png
openMethod: window
spec:
versionName: "1.41.4.9463"
fullDescription: |
## OVERVIEW ##
Plex Media Server organizes your video, music, and photo collections and
streams them to all of your screens. This chart deploys Plex with NVIDIA
GPU hardware transcoding (NVENC/NVDEC) using the RTX 5090.
Media is mounted read-only from Atlantis NAS via NFS at /media.
Transcoding uses a RAM-backed tmpfs for maximum performance.
## Libraries ##
After installation, add libraries pointing to:
- Movies: /media/movies
- TV Shows: /media/tv
- Anime: /media/anime
- Music: /media/music
- Audiobooks: /media/audiobooks
## Hardware Transcoding ##
Enable in Settings > Transcoder > "Use hardware acceleration when available".
developer: Plex, Inc.
website: https://www.plex.tv/
sourceCode: https://github.com/plexinc/pms-docker
submitter: vishinator
locale:
- en-US
license:
- text: GPL-2.0
url: https://github.com/plexinc/pms-docker/blob/master/LICENSE
limitedCpu: "4"
requiredCpu: 500m
requiredDisk: 50Mi
limitedDisk: 50Gi
limitedMemory: 8Gi
requiredMemory: 2Gi
requiredGpu: 1Gi
limitedGpu: 4Gi
supportArch:
- amd64
onlyAdmin: true
permission:
appData: true
appCache: true
options:
apiTimeout: 0
appScope:
clusterScoped: true
appRef:
- plex
dependencies:
- name: olares
version: '>=1.12.0-0'
type: system

2
olares/plex-chart/owners Normal file
View File

@@ -0,0 +1,2 @@
owners:
- 'vishinator'

View File

@@ -0,0 +1,103 @@
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: plex
namespace: "{{ .Release.Namespace }}"
labels:
app: plex
io.kompose.service: plex
annotations:
applications.app.bytetrade.io/gpu-inject: "true"
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: plex
io.kompose.service: plex
template:
metadata:
labels:
app: plex
io.kompose.service: plex
io.kompose.network/chrome-default: "true"
spec:
containers:
- name: plex
image: "{{ .Values.image }}"
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "{{ .Values.timezone }}"
- name: VERSION
value: "docker"
- name: NVIDIA_VISIBLE_DEVICES
value: "all"
- name: NVIDIA_DRIVER_CAPABILITIES
value: "all"
ports:
- containerPort: 32400
name: plex-web
startupProbe:
tcpSocket:
port: 32400
failureThreshold: 30
periodSeconds: 10
livenessProbe:
httpGet:
path: /identity
port: 32400
initialDelaySeconds: 10
timeoutSeconds: 10
periodSeconds: 30
failureThreshold: 5
resources:
limits:
cpu: "4"
memory: 8Gi
requests:
cpu: 500m
memory: 2Gi
volumeMounts:
- name: config
mountPath: /config
- name: media
mountPath: /media
readOnly: true
- name: transcode
mountPath: /transcode
volumes:
- name: config
hostPath:
path: "{{ .Values.configPath }}"
type: DirectoryOrCreate
- name: media
hostPath:
path: "{{ .Values.mediaPath }}"
type: Directory
- name: transcode
emptyDir:
medium: Memory
sizeLimit: "{{ .Values.transcodeSizeLimit }}"
restartPolicy: Always
---
apiVersion: v1
kind: Service
metadata:
name: plex
namespace: "{{ .Release.Namespace }}"
labels:
io.kompose.service: plex
spec:
ports:
- name: plex-web
port: 32400
targetPort: 32400
selector:
io.kompose.service: plex

View File

@@ -0,0 +1,6 @@
image: lscr.io/linuxserver/plex:latest
mediaPath: /mnt/atlantis_media
configPath: /var/olares/userdata/plex-config
transcodeSizeLimit: 4Gi
gpuMemory: 4096
timezone: America/Los_Angeles

View File

@@ -0,0 +1,6 @@
apiVersion: v2
appVersion: 1.41.4.9463
description: Plex Media Server with NVIDIA GPU hardware transcoding
name: plex
type: application
version: 1.0.0

View File

@@ -0,0 +1,81 @@
---
olaresManifest.version: "0.10.0"
olaresManifest.type: app
apiVersion: 'v2'
metadata:
name: plex
icon: https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/plex-logo.png
description: Stream movies, TV, music, and more from your personal media library.
appid: plex
title: Plex Media Server
version: "1.0.0"
categories:
- Entertainment
entrances:
- name: plexweb
port: 32400
host: plex
title: Plex
icon: https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/plex-logo.png
openMethod: window
spec:
versionName: "1.41.4.9463"
fullDescription: |
## OVERVIEW ##
Plex Media Server organizes your video, music, and photo collections and
streams them to all of your screens. This chart deploys Plex with NVIDIA
GPU hardware transcoding (NVENC/NVDEC) using the RTX 5090.
Media is mounted read-only from Atlantis NAS via NFS at /media.
Transcoding uses a RAM-backed tmpfs for maximum performance.
## Libraries ##
After installation, add libraries pointing to:
- Movies: /media/movies
- TV Shows: /media/tv
- Anime: /media/anime
- Music: /media/music
- Audiobooks: /media/audiobooks
## Hardware Transcoding ##
Enable in Settings > Transcoder > "Use hardware acceleration when available".
developer: Plex, Inc.
website: https://www.plex.tv/
sourceCode: https://github.com/plexinc/pms-docker
submitter: vishinator
locale:
- en-US
license:
- text: GPL-2.0
url: https://github.com/plexinc/pms-docker/blob/master/LICENSE
limitedCpu: "4"
requiredCpu: 500m
requiredDisk: 50Mi
limitedDisk: 50Gi
limitedMemory: 8Gi
requiredMemory: 2Gi
requiredGpu: 1Gi
limitedGpu: 4Gi
supportArch:
- amd64
onlyAdmin: true
permission:
appData: true
appCache: true
options:
apiTimeout: 0
appScope:
clusterScoped: true
appRef:
- plex
dependencies:
- name: olares
version: '>=1.12.0-0'
type: system

2
olares/plex-tmp/owners Normal file
View File

@@ -0,0 +1,2 @@
owners:
- 'vishinator'

View File

@@ -0,0 +1,103 @@
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: plex
namespace: "{{ .Release.Namespace }}"
labels:
app: plex
io.kompose.service: plex
annotations:
applications.app.bytetrade.io/gpu-inject: "true"
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: plex
io.kompose.service: plex
template:
metadata:
labels:
app: plex
io.kompose.service: plex
io.kompose.network/chrome-default: "true"
spec:
containers:
- name: plex
image: "{{ .Values.image }}"
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "{{ .Values.timezone }}"
- name: VERSION
value: "docker"
- name: NVIDIA_VISIBLE_DEVICES
value: "all"
- name: NVIDIA_DRIVER_CAPABILITIES
value: "all"
ports:
- containerPort: 32400
name: plex-web
startupProbe:
tcpSocket:
port: 32400
failureThreshold: 30
periodSeconds: 10
livenessProbe:
httpGet:
path: /identity
port: 32400
initialDelaySeconds: 10
timeoutSeconds: 10
periodSeconds: 30
failureThreshold: 5
resources:
limits:
cpu: "4"
memory: 8Gi
requests:
cpu: 500m
memory: 2Gi
volumeMounts:
- name: config
mountPath: /config
- name: media
mountPath: /media
readOnly: true
- name: transcode
mountPath: /transcode
volumes:
- name: config
hostPath:
path: "{{ .Values.configPath }}"
type: DirectoryOrCreate
- name: media
hostPath:
path: "{{ .Values.mediaPath }}"
type: Directory
- name: transcode
emptyDir:
medium: Memory
sizeLimit: "{{ .Values.transcodeSizeLimit }}"
restartPolicy: Always
---
apiVersion: v1
kind: Service
metadata:
name: plex
namespace: "{{ .Release.Namespace }}"
labels:
io.kompose.service: plex
spec:
ports:
- name: plex-web
port: 32400
targetPort: 32400
selector:
io.kompose.service: plex

View File

@@ -0,0 +1,6 @@
image: lscr.io/linuxserver/plex:latest
mediaPath: /mnt/atlantis_media
configPath: /var/olares/userdata/plex-config
transcodeSizeLimit: 4Gi
gpuMemory: 4096
timezone: America/Los_Angeles

129
olares/plex.yaml Normal file
View File

@@ -0,0 +1,129 @@
apiVersion: v1
kind: Namespace
metadata:
name: plex
---
apiVersion: v1
kind: REDACTED_APP_PASSWORD
metadata:
name: plex-config-pv
spec:
capacity:
storage: 50Gi
accessModes:
- ReadWriteOnce
storageClassName: local
local:
path: /var/olares/userdata/plex-config
nodeAffinity:
required:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/hostname
operator: In
values:
- olares
persistentVolumeReclaimPolicy: Retain
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: plex-config
namespace: plex
spec:
storageClassName: local
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 50Gi
volumeName: plex-config-pv
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: plex
namespace: plex
labels:
app: plex
applications.app.bytetrade.io/name: plex
applications.app.bytetrade.io/owner: vishinator
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: plex
template:
metadata:
labels:
app: plex
applications.app.bytetrade.io/name: plex
applications.app.bytetrade.io/owner: vishinator
io.bytetrade.app: "true"
spec:
runtimeClassName: nvidia
containers:
- name: plex
image: lscr.io/linuxserver/plex:latest
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "America/Los_Angeles"
- name: VERSION
value: "docker"
- name: NVIDIA_VISIBLE_DEVICES
value: "all"
- name: NVIDIA_DRIVER_CAPABILITIES
value: "all"
ports:
- containerPort: 32400
name: plex-web
resources:
limits:
nvidia.com/gpu: "1"
nvidia.com/gpumem: "4096"
memory: "8Gi"
requests:
cpu: "500m"
memory: "2Gi"
volumeMounts:
- name: config
mountPath: /config
- name: media
mountPath: /media
readOnly: true
- name: transcode
mountPath: /transcode
volumes:
- name: config
persistentVolumeClaim:
claimName: plex-config
- name: media
hostPath:
path: /mnt/atlantis_media
- name: transcode
emptyDir:
medium: Memory
sizeLimit: 4Gi
---
apiVersion: v1
kind: Service
metadata:
name: plex
namespace: plex
spec:
type: NodePort
externalIPs:
- 192.168.0.145
selector:
app: plex
ports:
- port: 32400
targetPort: 32400
nodePort: 32400
name: plex-web

BIN
olares/tdarr-node-chart.tgz Normal file

Binary file not shown.

View File

@@ -0,0 +1,6 @@
apiVersion: v2
appVersion: 2.67.01
description: Tdarr transcoding node with NVIDIA GPU hardware acceleration
name: tdarr-node
type: application
version: 1.0.0

View File

@@ -0,0 +1,65 @@
---
olaresManifest.version: "0.10.0"
olaresManifest.type: app
apiVersion: 'v2'
metadata:
name: tdarr-node
icon: https://raw.githubusercontent.com/HaveAGitGat/Tdarr/master/Tdarr_Logo.png
description: GPU-accelerated Tdarr transcoding node using NVIDIA NVENC on RTX 5090.
appid: tdarr-node
title: Tdarr Node (GPU)
version: "1.0.0"
categories:
- Media
spec:
versionName: "2.67.01"
fullDescription: |
## OVERVIEW ##
Tdarr transcoding node with NVIDIA RTX 5090 GPU hardware acceleration.
Connects to the Tdarr server on Atlantis (192.168.0.200:8266) and processes
transcode jobs using NVENC for 10-15x real-time 4K HEVC encoding.
Media is mounted read-only from Atlantis NAS via NFS at /media.
Cache/temp files use a shared NFS mount at /mnt/atlantis_cache.
## GPU Transcoding ##
Uses NVIDIA NVENC (dedicated hardware encoder) — does NOT compete with
CUDA inference (Ollama). Can run simultaneously with Jellyfin transcoding.
RTX 5090 supports up to 8 concurrent NVENC sessions.
developer: HaveAGitGat
website: https://tdarr.io/
sourceCode: https://github.com/HaveAGitGat/Tdarr
submitter: vishinator
locale:
- en-US
license:
- text: Source Available
url: https://github.com/HaveAGitGat/Tdarr
limitedCpu: "8"
requiredCpu: 500m
requiredDisk: 50Mi
limitedDisk: 10Gi
limitedMemory: 16Gi
requiredMemory: 2Gi
supportArch:
- amd64
onlyAdmin: true
permission:
appData: true
appCache: true
options:
apiTimeout: 0
appScope:
clusterScoped: true
appRef:
- tdarr-node
dependencies:
- name: olares
version: '>=1.12.0-0'
type: system

View File

@@ -0,0 +1,2 @@
owners:
- 'vishinator'

View File

@@ -0,0 +1,91 @@
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: tdarr-node
namespace: "{{ .Release.Namespace }}"
labels:
app: tdarr-node
io.kompose.service: tdarr-node
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: tdarr-node
io.kompose.service: tdarr-node
template:
metadata:
labels:
app: tdarr-node
io.kompose.service: tdarr-node
io.kompose.network/chrome-default: "true"
spec:
runtimeClassName: nvidia
containers:
- name: tdarr-node
image: "{{ .Values.image }}"
env:
- name: PUID
value: "1029"
- name: PGID
value: "100"
- name: TZ
value: "{{ .Values.timezone }}"
- name: UMASK
value: "022"
- name: nodeName
value: "{{ .Values.nodeName }}"
- name: serverIP
value: "{{ .Values.serverIP }}"
- name: serverPort
value: "{{ .Values.serverPort }}"
- name: inContainer
value: "true"
- name: ffmpegVersion
value: "6"
- name: NVIDIA_VISIBLE_DEVICES
value: "all"
- name: NVIDIA_DRIVER_CAPABILITIES
value: "all"
resources:
limits:
cpu: "8"
memory: 16Gi
requests:
cpu: 500m
memory: 2Gi
volumeMounts:
- name: config
mountPath: /app/configs
- name: logs
mountPath: /app/logs
- name: media
mountPath: /media
- name: cache-temp
mountPath: /temp
- name: cache
mountPath: /cache
volumes:
- name: config
hostPath:
path: "{{ .Values.configPath }}/configs"
type: DirectoryOrCreate
- name: logs
hostPath:
path: "{{ .Values.configPath }}/logs"
type: DirectoryOrCreate
- name: media
hostPath:
path: "{{ .Values.mediaPath }}"
type: Directory
- name: cache-temp
hostPath:
path: "{{ .Values.cachePath }}"
type: Directory
- name: cache
hostPath:
path: "{{ .Values.cachePath }}"
type: Directory
restartPolicy: Always

View File

@@ -0,0 +1,8 @@
image: ghcr.io/haveagitgat/tdarr_node@sha256:dc23becc667f77d2489b1042REDACTED_GITEA_TOKEN
nodeName: Olares
serverIP: "192.168.0.200"
serverPort: "8266"
mediaPath: /mnt/atlantis_media
cachePath: /mnt/atlantis_cache
configPath: /var/olares/userdata/tdarr-node
timezone: America/Los_Angeles

113
olares/tdarr-node.yaml Normal file
View File

@@ -0,0 +1,113 @@
apiVersion: v1
kind: Namespace
metadata:
name: tdarr-node
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: tdarr-node
namespace: tdarr-node
labels:
app: tdarr-node
applications.app.bytetrade.io/name: tdarr-node
applications.app.bytetrade.io/owner: vishinator
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: tdarr-node
template:
metadata:
labels:
app: tdarr-node
applications.app.bytetrade.io/name: tdarr-node
applications.app.bytetrade.io/owner: vishinator
io.bytetrade.app: "true"
spec:
runtimeClassName: nvidia
containers:
- name: tdarr-node
image: ghcr.io/haveagitgat/tdarr_node@sha256:dc23becc667f77d2489b1042REDACTED_GITEA_TOKEN
env:
- name: PUID
value: "1029"
- name: PGID
value: "100"
- name: TZ
value: "America/Los_Angeles"
- name: UMASK
value: "022"
- name: nodeName
value: "Olares"
- name: serverIP
value: "192.168.0.200"
- name: serverPort
value: "8266"
- name: inContainer
value: "true"
- name: ffmpegVersion
value: "6"
- name: NVIDIA_VISIBLE_DEVICES
value: "all"
- name: NVIDIA_DRIVER_CAPABILITIES
value: "all"
resources:
requests:
cpu: "500m"
memory: "2Gi"
limits:
cpu: "8"
memory: "16Gi"
volumeMounts:
- name: config
mountPath: /app/configs
- name: logs
mountPath: /app/logs
- name: media
mountPath: /media
- name: cache-temp
mountPath: /temp
- name: cache
mountPath: /cache
volumes:
- name: config
hostPath:
path: /var/olares/userdata/tdarr-node/configs
type: DirectoryOrCreate
- name: logs
hostPath:
path: /var/olares/userdata/tdarr-node/logs
type: DirectoryOrCreate
- name: media
hostPath:
path: /mnt/atlantis_media
type: Directory
- name: cache-temp
hostPath:
path: /mnt/atlantis_cache
type: Directory
- name: cache
hostPath:
path: /mnt/atlantis_cache
type: Directory
---
apiVersion: crd.projectcalico.org/v1
kind: GlobalNetworkPolicy
metadata:
name: allow-lan-to-tdarr
spec:
order: 100
selector: app == 'tdarr-node'
types:
- Ingress
- Egress
ingress:
- action: Allow
source:
nets:
- 192.168.0.0/24
egress:
- action: Allow