feat: refactor apps
This commit is contained in:
@@ -843,7 +843,7 @@ homepage:
|
|||||||
siteMonitor: http://yubal.yubal:80
|
siteMonitor: http://yubal.yubal:80
|
||||||
statusStyle: dot
|
statusStyle: dot
|
||||||
- Music Grabber:
|
- Music Grabber:
|
||||||
icon: sh-music-service.webp
|
icon: sh-music-grabber.webp
|
||||||
description: Replicate Music playlists
|
description: Replicate Music playlists
|
||||||
href: https://music-grabber.alexlebens.net
|
href: https://music-grabber.alexlebens.net
|
||||||
siteMonitor: http://music-grabber.music-grabber:80
|
siteMonitor: http://music-grabber.music-grabber:80
|
||||||
|
|||||||
@@ -5,11 +5,12 @@ description: Music Grabber
|
|||||||
keywords:
|
keywords:
|
||||||
- music-grabber
|
- music-grabber
|
||||||
- music
|
- music
|
||||||
home: https://wiki.alexlebens.dev/s/
|
home: https://docs.alexlebens.dev/applications/music-grabber/
|
||||||
sources:
|
sources:
|
||||||
- https://gitlab.com/g33kphr33k/musicgrabber
|
- https://gitlab.com/g33kphr33k/musicgrabber
|
||||||
- https://hub.docker.com/r/g33kphr33k/musicgrabber/tags
|
- https://hub.docker.com/r/g33kphr33k/musicgrabber
|
||||||
- https://github.com/bjw-s-labs/helm-charts/tree/main/charts/other/app-template
|
- https://github.com/bjw-s-labs/helm-charts/tree/main/charts/other/app-template
|
||||||
|
- https://gitea.alexlebens.dev/alexlebens/helm-charts/src/branch/main/charts/volsync-target
|
||||||
maintainers:
|
maintainers:
|
||||||
- name: alexlebens
|
- name: alexlebens
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -17,5 +18,10 @@ dependencies:
|
|||||||
alias: music-grabber
|
alias: music-grabber
|
||||||
repository: https://bjw-s-labs.github.io/helm-charts/
|
repository: https://bjw-s-labs.github.io/helm-charts/
|
||||||
version: 4.6.2
|
version: 4.6.2
|
||||||
|
- name: volsync-target
|
||||||
|
alias: volsync-target-data
|
||||||
|
version: 0.8.0
|
||||||
|
repository: oci://harbor.alexlebens.net/helm-charts
|
||||||
|
icon: https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/music-grabber.png
|
||||||
# renovate: datasource=docker depName=g33kphr33k/musicgrabber
|
# renovate: datasource=docker depName=g33kphr33k/musicgrabber
|
||||||
appVersion: 2.5.5
|
appVersion: 2.5.5
|
||||||
|
|||||||
@@ -14,31 +14,19 @@ spec:
|
|||||||
data:
|
data:
|
||||||
- secretKey: navidrome-user
|
- secretKey: navidrome-user
|
||||||
remoteRef:
|
remoteRef:
|
||||||
conversionStrategy: Default
|
|
||||||
decodingStrategy: None
|
|
||||||
key: /cl01tl/navidrome/admin
|
key: /cl01tl/navidrome/admin
|
||||||
metadataPolicy: None
|
|
||||||
property: user
|
property: user
|
||||||
- secretKey: navidrome-password
|
- secretKey: navidrome-password
|
||||||
remoteRef:
|
remoteRef:
|
||||||
conversionStrategy: Default
|
|
||||||
decodingStrategy: None
|
|
||||||
key: /cl01tl/navidrome/admin
|
key: /cl01tl/navidrome/admin
|
||||||
metadataPolicy: None
|
|
||||||
property: password
|
property: password
|
||||||
- secretKey: slskd-user
|
- secretKey: slskd-user
|
||||||
remoteRef:
|
remoteRef:
|
||||||
conversionStrategy: Default
|
|
||||||
decodingStrategy: None
|
|
||||||
key: /cl01tl/slskd/auth
|
key: /cl01tl/slskd/auth
|
||||||
metadataPolicy: None
|
|
||||||
property: user
|
property: user
|
||||||
- secretKey: slskd-password
|
- secretKey: slskd-password
|
||||||
remoteRef:
|
remoteRef:
|
||||||
conversionStrategy: Default
|
|
||||||
decodingStrategy: None
|
|
||||||
key: /cl01tl/slskd/auth
|
key: /cl01tl/slskd/auth
|
||||||
metadataPolicy: None
|
|
||||||
property: password
|
property: password
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -58,29 +46,17 @@ spec:
|
|||||||
data:
|
data:
|
||||||
- secretKey: private-key
|
- secretKey: private-key
|
||||||
remoteRef:
|
remoteRef:
|
||||||
conversionStrategy: Default
|
|
||||||
decodingStrategy: None
|
|
||||||
key: /airvpn/conf/cl01tl
|
key: /airvpn/conf/cl01tl
|
||||||
metadataPolicy: None
|
|
||||||
property: private-key
|
property: private-key
|
||||||
- secretKey: preshared-key
|
- secretKey: preshared-key
|
||||||
remoteRef:
|
remoteRef:
|
||||||
conversionStrategy: Default
|
|
||||||
decodingStrategy: None
|
|
||||||
key: /airvpn/conf/cl01tl
|
key: /airvpn/conf/cl01tl
|
||||||
metadataPolicy: None
|
|
||||||
property: preshared-key
|
property: preshared-key
|
||||||
- secretKey: addresses
|
- secretKey: addresses
|
||||||
remoteRef:
|
remoteRef:
|
||||||
conversionStrategy: Default
|
|
||||||
decodingStrategy: None
|
|
||||||
key: /airvpn/conf/cl01tl
|
key: /airvpn/conf/cl01tl
|
||||||
metadataPolicy: None
|
|
||||||
property: addresses
|
property: addresses
|
||||||
- secretKey: input-ports
|
- secretKey: input-ports
|
||||||
remoteRef:
|
remoteRef:
|
||||||
conversionStrategy: Default
|
|
||||||
decodingStrategy: None
|
|
||||||
key: /airvpn/conf/cl01tl
|
key: /airvpn/conf/cl01tl
|
||||||
metadataPolicy: None
|
|
||||||
property: input-ports
|
property: input-ports
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
apiVersion: v1
|
|
||||||
kind: Namespace
|
|
||||||
metadata:
|
|
||||||
name: music-grabber
|
|
||||||
labels:
|
|
||||||
app.kubernetes.io/name: music-grabber
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
pod-security.kubernetes.io/audit: privileged
|
|
||||||
pod-security.kubernetes.io/enforce: privileged
|
|
||||||
pod-security.kubernetes.io/warn: privileged
|
|
||||||
@@ -4,13 +4,15 @@ music-grabber:
|
|||||||
type: deployment
|
type: deployment
|
||||||
replicas: 1
|
replicas: 1
|
||||||
strategy: Recreate
|
strategy: Recreate
|
||||||
revisionHistoryLimit: 3
|
pod:
|
||||||
|
securityContext:
|
||||||
|
fsGroup: 1000
|
||||||
|
fsGroupChangePolicy: OnRootMismatch
|
||||||
containers:
|
containers:
|
||||||
main:
|
main:
|
||||||
image:
|
image:
|
||||||
repository: g33kphr33k/musicgrabber
|
repository: g33kphr33k/musicgrabber
|
||||||
tag: 2.5.5
|
tag: 2.5.5@sha256:756ce91653b2f5f17f8f47e5c91f07df5af82162608acdf507e6209a16725373
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
env:
|
env:
|
||||||
- name: MUSIC_DIR
|
- name: MUSIC_DIR
|
||||||
value: /mnt/store/Music Grabber/
|
value: /mnt/store/Music Grabber/
|
||||||
@@ -49,73 +51,7 @@ music-grabber:
|
|||||||
cpu: 100m
|
cpu: 100m
|
||||||
requests:
|
requests:
|
||||||
cpu: 10m
|
cpu: 10m
|
||||||
memory: 512Mi
|
memory: 50Mi
|
||||||
# gluetun:
|
|
||||||
# image:
|
|
||||||
# repository: ghcr.io/qdm12/gluetun
|
|
||||||
# tag: v3.41.1@sha256:1a5bf4b4820a879cdf8d93d7ef0d2d963af56670c9ebff8981860b6804ebc8ab
|
|
||||||
# pullPolicy: IfNotPresent
|
|
||||||
# lifecycle:
|
|
||||||
# postStart:
|
|
||||||
# exec:
|
|
||||||
# command: ["/bin/sh", "-c", "(ip rule del table 51820; ip -6 rule del table 51820) || true"]
|
|
||||||
# env:
|
|
||||||
# - name: VPN_SERVICE_PROVIDER
|
|
||||||
# value: airvpn
|
|
||||||
# - name: VPN_TYPE
|
|
||||||
# value: wireguard
|
|
||||||
# - name: WIREGUARD_PRIVATE_KEY
|
|
||||||
# valueFrom:
|
|
||||||
# secretKeyRef:
|
|
||||||
# name: music-grabber-wireguard-conf
|
|
||||||
# key: private-key
|
|
||||||
# - name: WIREGUARD_PRESHARED_KEY
|
|
||||||
# valueFrom:
|
|
||||||
# secretKeyRef:
|
|
||||||
# name: music-grabber-wireguard-conf
|
|
||||||
# key: preshared-key
|
|
||||||
# - name: WIREGUARD_ADDRESSES
|
|
||||||
# valueFrom:
|
|
||||||
# secretKeyRef:
|
|
||||||
# name: music-grabber-wireguard-conf
|
|
||||||
# key: addresses
|
|
||||||
# - name: FIREWALL_OUTBOUND_SUBNETS
|
|
||||||
# value: 10.0.0.0/8
|
|
||||||
# - name: FIREWALL_INPUT_PORTS
|
|
||||||
# value: 8080
|
|
||||||
# - name: DNS_UPSTREAM_RESOLVER_TYPE
|
|
||||||
# value: dot
|
|
||||||
# - name: HTTPPROXY
|
|
||||||
# value: "off"
|
|
||||||
# - name: SHADOWSOCKS
|
|
||||||
# value: "off"
|
|
||||||
# securityContext:
|
|
||||||
# privileged: True
|
|
||||||
# capabilities:
|
|
||||||
# add:
|
|
||||||
# - NET_ADMIN
|
|
||||||
# - SYS_MODULE
|
|
||||||
# probes:
|
|
||||||
# liveness:
|
|
||||||
# enabled: true
|
|
||||||
# custom: true
|
|
||||||
# spec:
|
|
||||||
# exec:
|
|
||||||
# command:
|
|
||||||
# - /gluetun-entrypoint
|
|
||||||
# - healthcheck
|
|
||||||
# failureThreshold: 5
|
|
||||||
# initialDelaySeconds: 30
|
|
||||||
# periodSeconds: 30
|
|
||||||
# successThreshold: 1
|
|
||||||
# timeoutSeconds: 15
|
|
||||||
# resources:
|
|
||||||
# limits:
|
|
||||||
# devic.es/tun: "1"
|
|
||||||
# requests:
|
|
||||||
# devic.es/tun: "1"
|
|
||||||
# cpu: 10m
|
|
||||||
# memory: 128Mi
|
|
||||||
service:
|
service:
|
||||||
main:
|
main:
|
||||||
controller: main
|
controller: main
|
||||||
@@ -123,7 +59,6 @@ music-grabber:
|
|||||||
http:
|
http:
|
||||||
port: 80
|
port: 80
|
||||||
targetPort: 8080
|
targetPort: 8080
|
||||||
protocol: HTTP
|
|
||||||
route:
|
route:
|
||||||
main:
|
main:
|
||||||
kind: HTTPRoute
|
kind: HTTPRoute
|
||||||
@@ -136,21 +71,18 @@ music-grabber:
|
|||||||
- music-grabber.alexlebens.net
|
- music-grabber.alexlebens.net
|
||||||
rules:
|
rules:
|
||||||
- backendRefs:
|
- backendRefs:
|
||||||
- group: ''
|
- name: music-grabber
|
||||||
kind: Service
|
|
||||||
name: music-grabber
|
|
||||||
port: 80
|
port: 80
|
||||||
weight: 100
|
|
||||||
matches:
|
matches:
|
||||||
- path:
|
- path:
|
||||||
type: PathPrefix
|
type: PathPrefix
|
||||||
value: /
|
value: /
|
||||||
persistence:
|
persistence:
|
||||||
cache:
|
data:
|
||||||
|
forceRename: music-grabber-data
|
||||||
storageClass: ceph-block
|
storageClass: ceph-block
|
||||||
accessMode: ReadWriteOnce
|
accessMode: ReadWriteOnce
|
||||||
size: 1Gi
|
size: 1Gi
|
||||||
retain: true
|
|
||||||
advancedMounts:
|
advancedMounts:
|
||||||
main:
|
main:
|
||||||
main:
|
main:
|
||||||
@@ -163,3 +95,14 @@ music-grabber:
|
|||||||
main:
|
main:
|
||||||
- path: /mnt/store/
|
- path: /mnt/store/
|
||||||
readOnly: false
|
readOnly: false
|
||||||
|
volsync-target-data:
|
||||||
|
pvcTarget: music-grabber-data
|
||||||
|
local:
|
||||||
|
enabled: true
|
||||||
|
schedule: 46 8 * * *
|
||||||
|
remote:
|
||||||
|
enabled: true
|
||||||
|
schedule: 46 9 * * *
|
||||||
|
external:
|
||||||
|
enabled: true
|
||||||
|
schedule: 46 10 * * *
|
||||||
|
|||||||
@@ -6,11 +6,14 @@ keywords:
|
|||||||
- navidrome
|
- navidrome
|
||||||
- feishin
|
- feishin
|
||||||
- music
|
- music
|
||||||
home: https://wiki.alexlebens.dev/s/
|
home: https://docs.alexlebens.dev/applications/navidrome/
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/navidrome/navidrome
|
- https://github.com/navidrome/navidrome
|
||||||
- https://github.com/jeffvli/feishin
|
- https://github.com/jeffvli/feishin
|
||||||
|
- https://github.com/navidrome/navidrome/pkgs/container/navidrome
|
||||||
|
- https://github.com/jeffvli/feishin/pkgs/container/feishin
|
||||||
- https://github.com/bjw-s-labs/helm-charts/tree/main/charts/other/app-template
|
- https://github.com/bjw-s-labs/helm-charts/tree/main/charts/other/app-template
|
||||||
|
- https://gitea.alexlebens.dev/alexlebens/helm-charts/src/branch/main/charts/volsync-target
|
||||||
maintainers:
|
maintainers:
|
||||||
- name: alexlebens
|
- name: alexlebens
|
||||||
dependencies:
|
dependencies:
|
||||||
|
|||||||
@@ -4,13 +4,15 @@ navidrome:
|
|||||||
type: deployment
|
type: deployment
|
||||||
replicas: 1
|
replicas: 1
|
||||||
strategy: Recreate
|
strategy: Recreate
|
||||||
revisionHistoryLimit: 3
|
pod:
|
||||||
|
securityContext:
|
||||||
|
fsGroup: 1000
|
||||||
|
fsGroupChangePolicy: OnRootMismatch
|
||||||
containers:
|
containers:
|
||||||
main:
|
main:
|
||||||
image:
|
image:
|
||||||
repository: deluan/navidrome
|
repository: ghcr.io/navidrome/navidrome
|
||||||
tag: 0.61.0@sha256:b14a6acb5cd5ee73f3a13d63d8d68ede82dedb796aa522fbada94769d990cf0b
|
tag: 0.61.0@sha256:b14a6acb5cd5ee73f3a13d63d8d68ede82dedb796aa522fbada94769d990cf0b
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
env:
|
env:
|
||||||
- name: ND_MUSICFOLDER
|
- name: ND_MUSICFOLDER
|
||||||
value: /music
|
value: /music
|
||||||
@@ -32,18 +34,16 @@ navidrome:
|
|||||||
requests:
|
requests:
|
||||||
gpu.intel.com/i915: 1
|
gpu.intel.com/i915: 1
|
||||||
cpu: 10m
|
cpu: 10m
|
||||||
memory: 128Mi
|
memory: 50Mi
|
||||||
feishin:
|
feishin:
|
||||||
type: deployment
|
type: deployment
|
||||||
replicas: 1
|
replicas: 1
|
||||||
strategy: Recreate
|
strategy: Recreate
|
||||||
revisionHistoryLimit: 3
|
|
||||||
containers:
|
containers:
|
||||||
main:
|
main:
|
||||||
image:
|
image:
|
||||||
repository: ghcr.io/jeffvli/feishin
|
repository: ghcr.io/jeffvli/feishin
|
||||||
tag: 1.0.1-beta.1@sha256:61239641f23a33f99c2858419b14afb66683f3cd82010363fba92be3993fd894
|
tag: 1.9.0@sha256:5e6959afd27dabadd8f68fed8b0485d851593c61ca558194295bf8950262cc07
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
env:
|
env:
|
||||||
- name: SERVER_NAME
|
- name: SERVER_NAME
|
||||||
value: talos
|
value: talos
|
||||||
@@ -53,6 +53,9 @@ navidrome:
|
|||||||
value: navidrome
|
value: navidrome
|
||||||
- name: SERVER_URL
|
- name: SERVER_URL
|
||||||
value: https://navidrome.alexlebens.net
|
value: https://navidrome.alexlebens.net
|
||||||
|
resources:
|
||||||
|
cpu: 1m
|
||||||
|
memory: 20Mi
|
||||||
service:
|
service:
|
||||||
main:
|
main:
|
||||||
controller: main
|
controller: main
|
||||||
@@ -60,14 +63,12 @@ navidrome:
|
|||||||
http:
|
http:
|
||||||
port: 80
|
port: 80
|
||||||
targetPort: 4533
|
targetPort: 4533
|
||||||
protocol: HTTP
|
|
||||||
feishin:
|
feishin:
|
||||||
controller: feishin
|
controller: feishin
|
||||||
ports:
|
ports:
|
||||||
http:
|
http:
|
||||||
port: 80
|
port: 80
|
||||||
targetPort: 9180
|
targetPort: 9180
|
||||||
protocol: HTTP
|
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
main:
|
main:
|
||||||
selector:
|
selector:
|
||||||
@@ -94,11 +95,8 @@ navidrome:
|
|||||||
- navidrome.alexlebens.net
|
- navidrome.alexlebens.net
|
||||||
rules:
|
rules:
|
||||||
- backendRefs:
|
- backendRefs:
|
||||||
- group: ''
|
- name: navidrome-main
|
||||||
kind: Service
|
|
||||||
name: navidrome-main
|
|
||||||
port: 80
|
port: 80
|
||||||
weight: 100
|
|
||||||
matches:
|
matches:
|
||||||
- path:
|
- path:
|
||||||
type: PathPrefix
|
type: PathPrefix
|
||||||
@@ -114,11 +112,8 @@ navidrome:
|
|||||||
- feishin.alexlebens.net
|
- feishin.alexlebens.net
|
||||||
rules:
|
rules:
|
||||||
- backendRefs:
|
- backendRefs:
|
||||||
- group: ''
|
- name: navidrome-feishin
|
||||||
kind: Service
|
|
||||||
name: navidrome-feishin
|
|
||||||
port: 80
|
port: 80
|
||||||
weight: 100
|
|
||||||
matches:
|
matches:
|
||||||
- path:
|
- path:
|
||||||
type: PathPrefix
|
type: PathPrefix
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ description: Node Feature Discovery
|
|||||||
keywords:
|
keywords:
|
||||||
- node-feature-discovery
|
- node-feature-discovery
|
||||||
- labels
|
- labels
|
||||||
- kubernetes
|
home: https://docs.alexlebens.dev/applications/node-feature-discovery/
|
||||||
home: https://wiki.alexlebens.dev/s/b6fb2588-8212-4dca-b4c6-3021020b2ae1
|
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/kubernetes-sigs/node-feature-discovery
|
- https://github.com/kubernetes-sigs/node-feature-discovery
|
||||||
|
- https://console.cloud.google.com/artifacts/docker/k8s-staging-nfd/us/gcr.io/node-feature-discovery
|
||||||
- https://github.com/kubernetes-sigs/node-feature-discovery/tree/master/deployment/helm/node-feature-discovery
|
- https://github.com/kubernetes-sigs/node-feature-discovery/tree/master/deployment/helm/node-feature-discovery
|
||||||
maintainers:
|
maintainers:
|
||||||
- name: alexlebens
|
- name: alexlebens
|
||||||
|
|||||||
@@ -1,12 +1,18 @@
|
|||||||
node-feature-discovery:
|
node-feature-discovery:
|
||||||
|
image:
|
||||||
|
repository: gcr.io/k8s-staging-nfd/node-feature-discovery
|
||||||
|
tag: v0.18.3@sha256:f9ef2ebee55141a1758d3c0a87bb701f5db2adf6856f7218b11bc2bac7b63862
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
featureGates:
|
featureGates:
|
||||||
NodeFeatureGroupAPI: true
|
NodeFeatureGroupAPI: true
|
||||||
master:
|
master:
|
||||||
replicaCount: 2
|
replicaCount: 1
|
||||||
resources:
|
resources:
|
||||||
|
limits:
|
||||||
|
memory: null
|
||||||
requests:
|
requests:
|
||||||
cpu: 20m
|
cpu: 10m
|
||||||
memory: 60Mi
|
memory: 20Mi
|
||||||
tolerations:
|
tolerations:
|
||||||
- key: node-role.kubernetes.io/control-plane
|
- key: node-role.kubernetes.io/control-plane
|
||||||
operator: Exists
|
operator: Exists
|
||||||
@@ -60,17 +66,23 @@ node-feature-discovery:
|
|||||||
class: ["0300"]
|
class: ["0300"]
|
||||||
vendor: ["8086"]
|
vendor: ["8086"]
|
||||||
resources:
|
resources:
|
||||||
|
limits:
|
||||||
|
memory: null
|
||||||
requests:
|
requests:
|
||||||
cpu: 20m
|
cpu: 1m
|
||||||
memory: 60Mi
|
memory: 20Mi
|
||||||
tolerations:
|
tolerations:
|
||||||
- key: node-role.kubernetes.io/control-plane
|
- key: node-role.kubernetes.io/control-plane
|
||||||
operator: Exists
|
operator: Exists
|
||||||
effect: NoSchedule
|
effect: NoSchedule
|
||||||
|
topologyUpdater:
|
||||||
|
enable: false
|
||||||
gc:
|
gc:
|
||||||
resources:
|
resources:
|
||||||
|
limits:
|
||||||
|
memory: null
|
||||||
requests:
|
requests:
|
||||||
cpu: 20m
|
cpu: 1m
|
||||||
memory: 60Mi
|
memory: 20Mi
|
||||||
prometheus:
|
prometheus:
|
||||||
enable: true
|
enable: true
|
||||||
|
|||||||
Reference in New Issue
Block a user