Initial commit
This commit is contained in:
commit
55b0cfc1f3
10 changed files with 298 additions and 0 deletions
57
lidarr/deployment.yml
Normal file
57
lidarr/deployment.yml
Normal file
|
|
@ -0,0 +1,57 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: lidarr
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: lidarr
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: lidarr
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: lidarr
|
||||||
|
image: lscr.io/linuxserver/lidarr:latest
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
memory: "128Mi"
|
||||||
|
cpu: "500m"
|
||||||
|
ports:
|
||||||
|
- containerPort: 8686
|
||||||
|
volumeMounts:
|
||||||
|
- name: lidarr-config
|
||||||
|
mountPath: /config
|
||||||
|
- name: music
|
||||||
|
mountPath: /music
|
||||||
|
- name: downloads
|
||||||
|
mountPath: /music/downloads
|
||||||
|
env:
|
||||||
|
- name: PUID
|
||||||
|
value: "0"
|
||||||
|
- name: PGID
|
||||||
|
value: "0"
|
||||||
|
volumes:
|
||||||
|
- name: lidarr-config
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: lidarr-config
|
||||||
|
- name: music
|
||||||
|
hostPath:
|
||||||
|
path: /mnt/nfs/music
|
||||||
|
- name: downloads
|
||||||
|
hostPath:
|
||||||
|
path: /mnt/nfs/soulseek
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: lidarr-config
|
||||||
|
spec:
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 128Mi
|
||||||
|
volumeMode: Filesystem
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
24
lidarr/ingress.yml
Normal file
24
lidarr/ingress.yml
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: lidarr
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: lidarr
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: "letsencrypt-production"
|
||||||
|
spec:
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- lidarr.foxhawk.co.uk
|
||||||
|
secretName: lidarr-tls
|
||||||
|
rules:
|
||||||
|
- host: lidarr.foxhawk.co.uk
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- pathType: Prefix
|
||||||
|
path: "/"
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: lidarr
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
10
lidarr/service.yml
Normal file
10
lidarr/service.yml
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: lidarr
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: lidarr
|
||||||
|
ports:
|
||||||
|
- port: 80
|
||||||
|
targetPort: 8686
|
||||||
48
navidrome/deployment.yml
Normal file
48
navidrome/deployment.yml
Normal file
|
|
@ -0,0 +1,48 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: navidrome
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: navidrome
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: navidrome
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: navidrome
|
||||||
|
image: deluan/navidrome:latest
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
memory: "128Mi"
|
||||||
|
cpu: "500m"
|
||||||
|
ports:
|
||||||
|
- containerPort: 4533
|
||||||
|
volumeMounts:
|
||||||
|
- name: music
|
||||||
|
mountPath: /music
|
||||||
|
readOnly: true
|
||||||
|
- name: navidrome-config
|
||||||
|
mountPath: /data
|
||||||
|
volumes:
|
||||||
|
- name: music
|
||||||
|
hostPath:
|
||||||
|
path: /mnt/nfs/music
|
||||||
|
- name: navidrome-config
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: navidrome-config
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: navidrome-config
|
||||||
|
namespace: navidrome
|
||||||
|
spec:
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 128Mi
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
24
navidrome/ingress.yml
Normal file
24
navidrome/ingress.yml
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: navidrome
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: navidrome
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: "letsencrypt-production"
|
||||||
|
spec:
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- navidrome.foxhawk.co.uk
|
||||||
|
secretName: navidrome-tls
|
||||||
|
rules:
|
||||||
|
- host: navidrome.foxhawk.co.uk
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- pathType: Prefix
|
||||||
|
path: "/"
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: navidrome
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
11
navidrome/service.yml
Normal file
11
navidrome/service.yml
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: navidrome
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: navidrome
|
||||||
|
ports:
|
||||||
|
- port: 80
|
||||||
|
targetPort: 4533
|
||||||
|
type: ClusterIP
|
||||||
70
soulseek/deployment.yml
Normal file
70
soulseek/deployment.yml
Normal file
|
|
@ -0,0 +1,70 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: soulseek
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: soulseek
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: soulseek
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: soulseek
|
||||||
|
image: slskd/slskd
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
memory: "512Mi"
|
||||||
|
cpu: "1"
|
||||||
|
ports:
|
||||||
|
- containerPort: 5030
|
||||||
|
- containerPort: 50300
|
||||||
|
volumeMounts:
|
||||||
|
- name: soulseek-config
|
||||||
|
mountPath: /app
|
||||||
|
- name: music
|
||||||
|
mountPath: /music
|
||||||
|
- name: downloads
|
||||||
|
mountPath: /downloads
|
||||||
|
env:
|
||||||
|
- name: SLSKD_REMOTE_CONFIGURATION
|
||||||
|
value: "true"
|
||||||
|
- name: SLSKD_SLSK_USERNAME
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
key: username
|
||||||
|
name: soulseek-creds
|
||||||
|
- name: SLSKD_SLSK_PASSWORD
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
key: password
|
||||||
|
name: soulseek-creds
|
||||||
|
- name: SLSKD_SHARED_DIR
|
||||||
|
value: /music
|
||||||
|
- name: SLSKD_DOWNLOADS_DIR
|
||||||
|
value: /downloads
|
||||||
|
volumes:
|
||||||
|
- name: soulseek-config
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: soulseek-config
|
||||||
|
- name: music
|
||||||
|
hostPath:
|
||||||
|
path: /mnt/nfs/music
|
||||||
|
- name: downloads
|
||||||
|
hostPath:
|
||||||
|
path: /mnt/nfs/soulseek
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: soulseek-config
|
||||||
|
spec:
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 128Mi
|
||||||
|
volumeMode: Filesystem
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
24
soulseek/ingress.yml
Normal file
24
soulseek/ingress.yml
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: soulseek
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: soulseek
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: "letsencrypt-production"
|
||||||
|
spec:
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- soulseek.foxhawk.co.uk
|
||||||
|
secretName: soulseek-tls
|
||||||
|
rules:
|
||||||
|
- host: soulseek.foxhawk.co.uk
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- pathType: Prefix
|
||||||
|
path: "/"
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: soulseek
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
8
soulseek/loginSecret.yml
Normal file
8
soulseek/loginSecret.yml
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: soulseek-creds
|
||||||
|
type: Opaque
|
||||||
|
data:
|
||||||
|
username: <username>
|
||||||
|
password: <Password>
|
||||||
22
soulseek/service.yml
Normal file
22
soulseek/service.yml
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: soulseek
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: soulseek
|
||||||
|
ports:
|
||||||
|
- port: 80
|
||||||
|
targetPort: 5030
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: soulseek2
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: soulseek
|
||||||
|
ports:
|
||||||
|
- port: 50300
|
||||||
|
targetPort: 50300
|
||||||
|
type: NodePort
|
||||||
Loading…
Add table
Add a link
Reference in a new issue