add homepage
This commit is contained in:
27
clusters/cl01tl/applications/homepage-dev/Chart.yaml
Normal file
27
clusters/cl01tl/applications/homepage-dev/Chart.yaml
Normal file
@@ -0,0 +1,27 @@
|
||||
apiVersion: v2
|
||||
name: homepage
|
||||
version: 1.0.0
|
||||
description: Homepage
|
||||
keywords:
|
||||
- homepage
|
||||
- dashboard
|
||||
home: https://wiki.alexlebens.dev/doc/homepage-dev-crZPAd8FEj
|
||||
sources:
|
||||
- https://github.com/gethomepage/homepage
|
||||
- https://github.com/cloudflare/cloudflared
|
||||
- https://github.com/gethomepage/homepage/pkgs/container/homepage
|
||||
- https://github.com/bjw-s/helm-charts/tree/main/charts/other/app-template
|
||||
- https://github.com/alexlebens/helm-charts/tree/main/charts/cloudflared
|
||||
maintainers:
|
||||
- name: alexlebens
|
||||
dependencies:
|
||||
- name: app-template
|
||||
alias: homepage
|
||||
repository: https://bjw-s.github.io/helm-charts/
|
||||
version: 3.7.1
|
||||
- name: cloudflared
|
||||
alias: cloudflared
|
||||
repository: http://alexlebens.github.io/helm-charts
|
||||
version: 1.14.0
|
||||
icon: https://raw.githubusercontent.com/walkxcode/dashboard-icons/main/png/homepage.png
|
||||
appVersion: v0.10.0
|
@@ -0,0 +1,23 @@
|
||||
apiVersion: external-secrets.io/v1beta1
|
||||
kind: ExternalSecret
|
||||
metadata:
|
||||
name: homepage-dev-cloudflared-secret
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
app.kubernetes.io/name: homepage-dev-cloudflared-secret
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion }}
|
||||
app.kubernetes.io/component: web
|
||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||
spec:
|
||||
secretStoreRef:
|
||||
kind: ClusterSecretStore
|
||||
name: vault
|
||||
data:
|
||||
- secretKey: cf-tunnel-token
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /cloudflare/tunnels/homepage-dev
|
||||
metadataPolicy: None
|
||||
property: token
|
145
clusters/cl01tl/applications/homepage-dev/values.yaml
Normal file
145
clusters/cl01tl/applications/homepage-dev/values.yaml
Normal file
@@ -0,0 +1,145 @@
|
||||
homepage:
|
||||
global:
|
||||
nameOverride: homepage
|
||||
controllers:
|
||||
main:
|
||||
type: deployment
|
||||
annotations:
|
||||
reloader.stakater.com/auto: "true"
|
||||
strategy: Recreate
|
||||
containers:
|
||||
main:
|
||||
image:
|
||||
repository: ghcr.io/gethomepage/homepage
|
||||
tag: v0.10.9
|
||||
pullPolicy: IfNotPresent
|
||||
resources:
|
||||
requests:
|
||||
cpu: 10m
|
||||
memory: 128Mi
|
||||
serviceAccount:
|
||||
create: true
|
||||
configMaps:
|
||||
config:
|
||||
enabled: true
|
||||
data:
|
||||
docker.yaml: ""
|
||||
kubernetes.yaml: ""
|
||||
settings.yaml: |
|
||||
favicon: https://web-assets-3bfcb5585cbd63dc365d32a3.nyc3.cdn.digitaloceanspaces.com/alexlebens-net/icon_white.png
|
||||
headerStyle: clean
|
||||
hideVersion: true
|
||||
color: zinc
|
||||
background:
|
||||
image: https://web-assets-3bfcb5585cbd63dc365d32a3.nyc3.cdn.digitaloceanspaces.com/alexlebens-net/background-3.jpg
|
||||
brightness: 50
|
||||
theme: dark
|
||||
disableCollapse: true
|
||||
widgets.yaml: |
|
||||
- logo:
|
||||
icon: https://web-assets-3bfcb5585cbd63dc365d32a3.nyc3.cdn.digitaloceanspaces.com/alexlebens-net/icon_white.png
|
||||
- datetime:
|
||||
text_size: xl
|
||||
format:
|
||||
dateStyle: long
|
||||
timeStyle: short
|
||||
hour12: false
|
||||
- openmeteo:
|
||||
label: St. Paul
|
||||
latitude: 44.95
|
||||
longitude: 93.09
|
||||
units: metric
|
||||
cache: 5
|
||||
services.yaml: |
|
||||
- Applications:
|
||||
- Auth:
|
||||
icon: sh-authentik.svg
|
||||
description: Authentik
|
||||
href: https://auth.alexlebens.dev
|
||||
siteMonitor: https://auth.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Site:
|
||||
icon: https://d21zlbwtcn424f.cloudfront.net/icon_white.png
|
||||
description: Profile Website
|
||||
href: https://www.alexlebens.dev
|
||||
siteMonitor: https://www.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Content Management:
|
||||
icon: directus.png
|
||||
description: Directus
|
||||
href: https://directus.alexlebens.dev
|
||||
siteMonitor: https://directus.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Chat:
|
||||
icon: sh-element.svg
|
||||
description: Matrix
|
||||
href: https://chat.alexlebens.dev
|
||||
siteMonitor: https://chat.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Wiki:
|
||||
icon: sh-outline.svg
|
||||
description: Outline
|
||||
href: https://wiki.alexlebens.dev
|
||||
siteMonitor: https://wiki.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Passwords:
|
||||
icon: sh-vaultwarden-light.svg
|
||||
description: Vaultwarden
|
||||
href: https://passwords.alexlebens.dev
|
||||
siteMonitor: https://passwords.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Bookmarks:
|
||||
icon: sh-hoarder-light.svg
|
||||
description: Hoader
|
||||
href: https://hoarder.alexlebens.dev
|
||||
siteMonitor: https://hoarder.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- RSS:
|
||||
icon: sh-freshrss.svg
|
||||
description: FreshRSS
|
||||
href: https://rss.alexlebens.dev
|
||||
siteMonitor: https://rss.alexlebens.dev
|
||||
statusStyle: dot
|
||||
bookmarks.yaml: ""
|
||||
service:
|
||||
http:
|
||||
controller: main
|
||||
ports:
|
||||
http:
|
||||
port: 80
|
||||
targetPort: 3000
|
||||
protocol: HTTP
|
||||
persistence:
|
||||
config:
|
||||
enabled: true
|
||||
type: configMap
|
||||
name: homepage-dev-config
|
||||
advancedMounts:
|
||||
main:
|
||||
main:
|
||||
- path: /app/config/bookmarks.yaml
|
||||
readOnly: true
|
||||
mountPropagation: None
|
||||
subPath: bookmarks.yaml
|
||||
- path: /app/config/docker.yaml
|
||||
readOnly: true
|
||||
mountPropagation: None
|
||||
subPath: docker.yaml
|
||||
- path: /app/config/kubernetes.yaml
|
||||
readOnly: true
|
||||
mountPropagation: None
|
||||
subPath: kubernetes.yaml
|
||||
- path: /app/config/services.yaml
|
||||
readOnly: true
|
||||
mountPropagation: None
|
||||
subPath: services.yaml
|
||||
- path: /app/config/settings.yaml
|
||||
readOnly: true
|
||||
mountPropagation: None
|
||||
subPath: settings.yaml
|
||||
- path: /app/config/widgets.yaml
|
||||
readOnly: true
|
||||
mountPropagation: None
|
||||
subPath: widgets.yaml
|
||||
cloudflared:
|
||||
existingSecretName: homepage-dev-cloudflared-secret
|
21
clusters/cl01tl/applications/homepage/Chart.yaml
Normal file
21
clusters/cl01tl/applications/homepage/Chart.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
apiVersion: v2
|
||||
name: homepage
|
||||
version: 1.0.0
|
||||
description: Homepage
|
||||
keywords:
|
||||
- homepage
|
||||
- dashboard
|
||||
home: https://wiki.alexlebens.dev/doc/homepage-s2clWoI5EC
|
||||
sources:
|
||||
- https://github.com/gethomepage/homepage
|
||||
- https://github.com/gethomepage/homepage/pkgs/container/homepage
|
||||
- https://github.com/bjw-s/helm-charts/tree/main/charts/other/app-template
|
||||
maintainers:
|
||||
- name: alexlebens
|
||||
dependencies:
|
||||
- name: app-template
|
||||
alias: homepage
|
||||
repository: https://bjw-s.github.io/helm-charts/
|
||||
version: 3.7.1
|
||||
icon: https://raw.githubusercontent.com/walkxcode/dashboard-icons/main/png/homepage.png
|
||||
appVersion: v0.10.0
|
@@ -0,0 +1,19 @@
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: homepage
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
app.kubernetes.io/name: homepage
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion }}
|
||||
app.kubernetes.io/component: web
|
||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: homepage
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: homepage
|
||||
namespace: {{ .Release.Namespace }}
|
@@ -0,0 +1,51 @@
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: homepage
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
app.kubernetes.io/name: homepage
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion }}
|
||||
app.kubernetes.io/component: web
|
||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- namespaces
|
||||
- pods
|
||||
- nodes
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- apiGroups:
|
||||
- extensions
|
||||
- networking.k8s.io
|
||||
resources:
|
||||
- ingresses
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- apiGroups:
|
||||
- traefik.containo.us
|
||||
- traefik.io
|
||||
resources:
|
||||
- ingressroutes
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- apiGroups:
|
||||
- metrics.k8s.io
|
||||
resources:
|
||||
- nodes
|
||||
- pods
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- apiGroups:
|
||||
- apiextensions.k8s.io
|
||||
resources:
|
||||
- customresourcedefinitions/status
|
||||
verbs:
|
||||
- get
|
@@ -0,0 +1,107 @@
|
||||
apiVersion: external-secrets.io/v1beta1
|
||||
kind: ExternalSecret
|
||||
metadata:
|
||||
name: homepage-keys-secret
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
app.kubernetes.io/name: homepage-keys-secret
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion }}
|
||||
app.kubernetes.io/component: web
|
||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||
spec:
|
||||
secretStoreRef:
|
||||
kind: ClusterSecretStore
|
||||
name: vault
|
||||
data:
|
||||
- secretKey: HOMEPAGE_VAR_SYNOLOGY_USER
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /synology/auth/cl01tl
|
||||
metadataPolicy: None
|
||||
property: user
|
||||
- secretKey: HOMEPAGE_VAR_SYNOLOGY_PASSWORD
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /synology/auth/cl01tl
|
||||
metadataPolicy: None
|
||||
property: password
|
||||
- secretKey: HOMEPAGE_VAR_UNIFI_USER
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /unifi/auth/cl01tl
|
||||
metadataPolicy: None
|
||||
property: user
|
||||
- secretKey: HOMEPAGE_VAR_UNIFI_PASSWORD
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /unifi/auth/cl01tl
|
||||
metadataPolicy: None
|
||||
property: password
|
||||
- secretKey: HOMEPAGE_VAR_SONARR_KEY
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /cl01tl/sonarr4/key
|
||||
metadataPolicy: None
|
||||
property: key
|
||||
- secretKey: HOMEPAGE_VAR_SONARR4K_KEY
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /cl01tl/sonarr4-4k/key
|
||||
metadataPolicy: None
|
||||
property: key
|
||||
- secretKey: HOMEPAGE_VAR_SONARRANIME_KEY
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /cl01tl/sonarr4-anime/key
|
||||
metadataPolicy: None
|
||||
property: key
|
||||
- secretKey: HOMEPAGE_VAR_RADARR_KEY
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /cl01tl/radarr5/key
|
||||
metadataPolicy: None
|
||||
property: key
|
||||
- secretKey: HOMEPAGE_VAR_RADARR4K_KEY
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /cl01tl/radarr5-4k/key
|
||||
metadataPolicy: None
|
||||
property: key
|
||||
- secretKey: HOMEPAGE_VAR_RADARRANIME_KEY
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /cl01tl/radarr5-anime/key
|
||||
metadataPolicy: None
|
||||
property: key
|
||||
- secretKey: HOMEPAGE_VAR_RADARRSTANDUP_KEY
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /cl01tl/radarr5-standup/key
|
||||
metadataPolicy: None
|
||||
property: key
|
||||
- secretKey: HOMEPAGE_VAR_LIDARR2_KEY
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /cl01tl/lidarr2/key
|
||||
metadataPolicy: None
|
||||
property: key
|
||||
- secretKey: HOMEPAGE_VAR_PROWLARR_KEY
|
||||
remoteRef:
|
||||
conversionStrategy: Default
|
||||
decodingStrategy: None
|
||||
key: /cl01tl/prowlarr/key
|
||||
metadataPolicy: None
|
||||
property: key
|
@@ -0,0 +1,30 @@
|
||||
apiVersion: gateway.networking.k8s.io/v1
|
||||
kind: HTTPRoute
|
||||
metadata:
|
||||
name: http-route-homepage
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
app.kubernetes.io/name: http-route-homepage
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion }}
|
||||
app.kubernetes.io/component: web
|
||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||
spec:
|
||||
parentRefs:
|
||||
- group: gateway.networking.k8s.io
|
||||
kind: Gateway
|
||||
name: traefik-gateway
|
||||
namespace: traefik
|
||||
hostnames:
|
||||
- homepage.alexlebens.net
|
||||
rules:
|
||||
- matches:
|
||||
- path:
|
||||
type: PathPrefix
|
||||
value: /
|
||||
backendRefs:
|
||||
- group: ''
|
||||
kind: Service
|
||||
name: homepage
|
||||
port: 80
|
||||
weight: 100
|
34
clusters/cl01tl/applications/homepage/templates/service.yaml
Normal file
34
clusters/cl01tl/applications/homepage/templates/service.yaml
Normal file
@@ -0,0 +1,34 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: gitea-ps10rp
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
app.kubernetes.io/name: gitea-ps10rp
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion }}
|
||||
app.kubernetes.io/component: tailscale
|
||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||
annotations:
|
||||
tailscale.com/tailnet-fqdn: gitea-ps10rp.boreal-beaufort.ts.net
|
||||
spec:
|
||||
externalName: placeholder
|
||||
type: ExternalName
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: home-ps10rp
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
app.kubernetes.io/name: home-ps10rp
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion }}
|
||||
app.kubernetes.io/component: tailscale
|
||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||
annotations:
|
||||
tailscale.com/tailnet-fqdn: home-ps10rp.boreal-beaufort.ts.net
|
||||
spec:
|
||||
externalName: placeholder
|
||||
type: ExternalName
|
676
clusters/cl01tl/applications/homepage/values.yaml
Normal file
676
clusters/cl01tl/applications/homepage/values.yaml
Normal file
@@ -0,0 +1,676 @@
|
||||
homepage:
|
||||
global:
|
||||
nameOverride: homepage
|
||||
controllers:
|
||||
main:
|
||||
type: deployment
|
||||
annotations:
|
||||
reloader.stakater.com/auto: "true"
|
||||
strategy: Recreate
|
||||
containers:
|
||||
main:
|
||||
image:
|
||||
repository: ghcr.io/gethomepage/homepage
|
||||
tag: v0.10.9
|
||||
pullPolicy: IfNotPresent
|
||||
envFrom:
|
||||
- secretRef:
|
||||
name: homepage-keys-secret
|
||||
resources:
|
||||
requests:
|
||||
cpu: 10m
|
||||
memory: 256Mi
|
||||
serviceAccount:
|
||||
create: true
|
||||
name: homepage
|
||||
configMaps:
|
||||
config:
|
||||
enabled: true
|
||||
data:
|
||||
docker.yaml: ""
|
||||
kubernetes.yaml: |
|
||||
mode: cluster
|
||||
settings.yaml: |
|
||||
favicon: https://web-assets-3bfcb5585cbd63dc365d32a3.nyc3.cdn.digitaloceanspaces.com/alexlebens-net/icon_white.png
|
||||
headerStyle: clean
|
||||
hideVersion: true
|
||||
color: zinc
|
||||
background:
|
||||
image: https://web-assets-3bfcb5585cbd63dc365d32a3.nyc3.cdn.digitaloceanspaces.com/alexlebens-net/background-3.jpg
|
||||
brightness: 50
|
||||
theme: dark
|
||||
disableCollapse: true
|
||||
layout:
|
||||
- Media:
|
||||
tab: Applications
|
||||
icon: mdi-multimedia-#ffffff
|
||||
- Public:
|
||||
tab: Applications
|
||||
icon: mdi-earth-#ffffff
|
||||
- Internal:
|
||||
tab: Applications
|
||||
icon: mdi-security-network-#ffffff
|
||||
- Code:
|
||||
tab: Tools
|
||||
icon: mdi-code-block-braces-#ffffff
|
||||
- Monitoring:
|
||||
tab: Tools
|
||||
icon: mdi-chart-line-#ffffff
|
||||
- Services:
|
||||
tab: Services
|
||||
icon: mdi-toolbox-outline-#ffffff
|
||||
- Hardware:
|
||||
tab: Services
|
||||
icon: mdi-server-network-#ffffff
|
||||
- Storage:
|
||||
tab: Services
|
||||
icon: mdi-database-#ffffff
|
||||
- TV Shows:
|
||||
tab: Servarr
|
||||
icon: mdi-television-#ffffff
|
||||
- Movies:
|
||||
tab: Servarr
|
||||
icon: mdi-filmstrip-#ffffff
|
||||
- Music:
|
||||
tab: Servarr
|
||||
icon: mdi-music-box-multiple-#ffffff
|
||||
- Services (Servarr):
|
||||
tab: Servarr
|
||||
icon: mdi-radar-#ffffff
|
||||
- External Services:
|
||||
tab: Bookmarks
|
||||
icon: mdi-cloud-#ffffff
|
||||
- Other Homes:
|
||||
tab: Bookmarks
|
||||
icon: mdi-cloud-#ffffff
|
||||
- Trackers:
|
||||
tab: Bookmarks
|
||||
icon: mdi-cloud-#ffffff
|
||||
widgets.yaml: |
|
||||
- logo:
|
||||
icon: https://web-assets-3bfcb5585cbd63dc365d32a3.nyc3.cdn.digitaloceanspaces.com/alexlebens-net/icon_white.png
|
||||
- kubernetes:
|
||||
cluster:
|
||||
show: true
|
||||
cpu: true
|
||||
memory: true
|
||||
showLabel: true
|
||||
label: "Cluster"
|
||||
nodes:
|
||||
show: false
|
||||
- datetime:
|
||||
text_size: xl
|
||||
format:
|
||||
dateStyle: long
|
||||
timeStyle: short
|
||||
hour12: false
|
||||
- openmeteo:
|
||||
label: St. Paul
|
||||
latitude: 44.95
|
||||
longitude: 93.09
|
||||
units: metric
|
||||
cache: 5
|
||||
services.yaml: |
|
||||
- Media:
|
||||
- Plex:
|
||||
icon: sh-plex.svg
|
||||
description: Media server
|
||||
href: https://plex.alexlebens.net
|
||||
siteMonitor: http://plex.plex:32400
|
||||
statusStyle: dot
|
||||
- Media Requests:
|
||||
icon: sh-overseerr.svg
|
||||
description: Overseer
|
||||
href: https://overseerr.alexlebens.net
|
||||
siteMonitor: http://overseerr.overseerr:80
|
||||
statusStyle: dot
|
||||
- Jellyfin:
|
||||
icon: sh-jellyfin.svg
|
||||
description: Media server
|
||||
href: https://jellyfin.alexlebens.net
|
||||
siteMonitor: http://jellyfin.jellyfin:80
|
||||
statusStyle: dot
|
||||
- Youtube Archive:
|
||||
icon: sh-tube-archivist-light.png
|
||||
description: TubeAchivist
|
||||
href: https://tubearchivist.alexlebens.net/login
|
||||
siteMonitor: http://tubearchivist.tubearchivist:80
|
||||
statusStyle: dot
|
||||
- Photos:
|
||||
icon: sh-immich.svg
|
||||
description: Immich
|
||||
href: https://immich.alexlebens.net
|
||||
siteMonitor: http://immich-main.immich:2283
|
||||
statusStyle: dot
|
||||
- Podcasts and Audiobooks:
|
||||
icon: sh-audiobookshelf.svg
|
||||
description: Audiobookshelf
|
||||
href: https://audiobookshelf.alexlebens.net
|
||||
siteMonitor: http://audiobookshelf.audiobookshelf:80
|
||||
statusStyle: dot
|
||||
- Books:
|
||||
icon: sh-calibre-web-light.svg
|
||||
description: Calibre Web Automated
|
||||
href: https://calibre.alexlebens.net
|
||||
siteMonitor: http://calibre-web-automated-main.calibre-web-automated:8083
|
||||
statusStyle: dot
|
||||
- Public:
|
||||
- Site:
|
||||
icon: https://web-assets-3bfcb5585cbd63dc365d32a3.nyc3.cdn.digitaloceanspaces.com/alexlebens-net/icon_white.png
|
||||
description: Profile Website
|
||||
href: https://www.alexlebens.dev
|
||||
siteMonitor: https://www.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Content Management:
|
||||
icon: directus.png
|
||||
description: Directus
|
||||
href: https://directus.alexlebens.dev
|
||||
siteMonitor: https://directus.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Chat:
|
||||
icon: sh-element.svg
|
||||
description: Matrix
|
||||
href: https://chat.alexlebens.dev
|
||||
siteMonitor: https://chat.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Wiki:
|
||||
icon: sh-outline.svg
|
||||
description: Outline
|
||||
href: https://wiki.alexlebens.dev
|
||||
siteMonitor: https://wiki.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Passwords:
|
||||
icon: sh-vaultwarden-light.svg
|
||||
description: Vaultwarden
|
||||
href: https://passwords.alexlebens.dev
|
||||
siteMonitor: https://passwords.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Bookmarks:
|
||||
icon: sh-hoarder-light.svg
|
||||
description: Hoader
|
||||
href: https://hoarder.alexlebens.dev
|
||||
siteMonitor: https://hoarder.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- RSS:
|
||||
icon: sh-freshrss.svg
|
||||
description: FreshRSS
|
||||
href: https://rss.alexlebens.dev
|
||||
siteMonitor: https://rss.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Internal:
|
||||
- Home Automation:
|
||||
icon: sh-home-assistant.svg
|
||||
description: Home Assistant
|
||||
href: https://home-assistant.alexlebens.net
|
||||
siteMonitor: http://home-assistant.home-assistant:8123
|
||||
statusStyle: dot
|
||||
- AI:
|
||||
icon: sh-ollama-light.svg
|
||||
description: Ollama
|
||||
href: https://ollama.alexlebens.net
|
||||
siteMonitor: http://ollama-web.ollama:80
|
||||
statusStyle: dot
|
||||
- AI Image:
|
||||
icon: https://user-images.githubusercontent.com/36368048/196280761-1535f413-a91e-4b6a-af6a-b890f8ae204c.png
|
||||
description: Stable Diffusion
|
||||
href: https://stable-diffusion-pd05wd.boreal-beaufort.ts.net
|
||||
siteMonitor: https://stable-diffusion-pd05wd.boreal-beaufort.ts.net
|
||||
statusStyle: dot
|
||||
- Search:
|
||||
icon: sh-searxng.svg
|
||||
description: Searxng
|
||||
href: https://searxng.alexlebens.net/
|
||||
siteMonitor: http://searxng-browser.searxng:80
|
||||
statusStyle: dot
|
||||
- Email:
|
||||
icon: sh-roundcube.svg
|
||||
description: Roundcube
|
||||
href: https://mail.alexlebens.net
|
||||
siteMonitor: http://roundcube.roundcube:80
|
||||
statusStyle: dot
|
||||
- Wiki:
|
||||
icon: sh-kiwix-light.svg
|
||||
description: Kiwix
|
||||
href: https://kiwix.alexlebens.net
|
||||
siteMonitor: http://kiwix.kiwix:80
|
||||
statusStyle: dot
|
||||
- Pictures:
|
||||
icon: sh-photoview.svg
|
||||
description: Photoview
|
||||
href: https://photoview.alexlebens.net
|
||||
siteMonitor: http://photoview.photoview:80
|
||||
statusStyle: dot
|
||||
- Code:
|
||||
- Code (Public):
|
||||
icon: sh-gitea.svg
|
||||
description: Gitea
|
||||
href: https://gitea.alexlebens.dev
|
||||
siteMonitor: https://gitea.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Code (Tailnet):
|
||||
icon: sh-gitea.svg
|
||||
description: Gitea
|
||||
href: https://gitea.alexlebens.net
|
||||
siteMonitor: https://gitea.alexlebens.net
|
||||
statusStyle: dot
|
||||
- Code (ps10rp):
|
||||
icon: sh-gitea.svg
|
||||
description: Gitea
|
||||
href: https://gitea.alexlebens.net
|
||||
siteMonitor: https://gitea.alexlebens.net
|
||||
statusStyle: dot
|
||||
- IDE (Public):
|
||||
icon: sh-visual-studio-code.svg
|
||||
description: VS Code
|
||||
href: https://codeserver.alexlebens.dev
|
||||
siteMonitor: https://codeserver.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- IDE (Home Assistant):
|
||||
icon: sh-visual-studio-code.svg
|
||||
description: Edit config for Home Assistant
|
||||
href: https://home-assistant-codeserver.alexlebens.net
|
||||
siteMonitor: http://home-assistant.home-assistant:8443
|
||||
statusStyle: dot
|
||||
- Continuous Deployment:
|
||||
icon: sh-argo-cd.svg
|
||||
description: ArgoCD
|
||||
href: https://argocd.alexlebens.net
|
||||
siteMonitor: http://argocd-server.argocd:80
|
||||
statusStyle: dot
|
||||
namespace: argocd
|
||||
- Workflows:
|
||||
icon: sh-argo-cd.svg
|
||||
description: Argo Workflows
|
||||
href: https://argo-workflows.alexlebens.net
|
||||
siteMonitor: http://argo-workflows-server.argo-workflows:2746
|
||||
statusStyle: dot
|
||||
namespace: argocd
|
||||
- Deployment:
|
||||
icon: sh-komodo.svg
|
||||
description: Komodo
|
||||
href: https://komodo.alexlebens.net
|
||||
siteMonitor: http://komodo.komodo:80
|
||||
statusStyle: dot
|
||||
namespace: komodo
|
||||
- Monitoring:
|
||||
- Kubernetes:
|
||||
icon: kubernetes.png
|
||||
description: Headlamp
|
||||
href: https://headlamp.alexlebens.net
|
||||
siteMonitor: http://headlamp.headlamp:80
|
||||
statusStyle: dot
|
||||
- Network Monitoring:
|
||||
icon: cilium.png
|
||||
description: Hubble for Cilium
|
||||
href: https://hubble.alexlebens.net
|
||||
siteMonitor: http://hubble-ui.kube-system:80
|
||||
statusStyle: dot
|
||||
- Dashboard:
|
||||
icon: sh-grafana.svg
|
||||
description: Grafana
|
||||
href: https://grafana.alexlebens.net
|
||||
siteMonitor: http://grafana.grafana:80/api/health
|
||||
statusStyle: dot
|
||||
- Metrics:
|
||||
icon: sh-prometheus.svg
|
||||
description: Prometheus
|
||||
href: https://prometheus.alexlebens.net
|
||||
siteMonitor: http://kube-prometheus-stack-prometheus.kube-prometheus-stack:9090
|
||||
statusStyle: dot
|
||||
widget:
|
||||
type: prometheus
|
||||
url: http://kube-prometheus-stack-prometheus.kube-prometheus-stack:9090
|
||||
- Tautulli:
|
||||
icon: sh-tautulli.svg
|
||||
description: Plex Monitoring
|
||||
href: https://tautulli.alexlebens.net
|
||||
siteMonitor: http://tautulli.tautulli:80
|
||||
statusStyle: dot
|
||||
- Jellystat:
|
||||
icon: sh-jellystat.png
|
||||
description: Jellyfin Monitoring
|
||||
href: https://jellystat.alexlebens.net
|
||||
siteMonitor: http://jellystat.jellystat:3000
|
||||
statusStyle: dot
|
||||
- Services:
|
||||
- Auth (Public):
|
||||
icon: sh-authentik.svg
|
||||
description: Authentik
|
||||
href: https://auth.alexlebens.dev
|
||||
siteMonitor: https://auth.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Auth (Tailnet):
|
||||
icon: sh-authentik.svg
|
||||
description: Authentik
|
||||
href: https://auth.alexlebens.net
|
||||
siteMonitor: http://authentik-server.authentik:80
|
||||
statusStyle: dot
|
||||
- Email:
|
||||
icon: sh-stalwart-mail-server.svg
|
||||
description: Stalwart
|
||||
href: https://stalwart.alexlebens.net
|
||||
siteMonitor: http://stalwart.stalwart:80
|
||||
statusStyle: dot
|
||||
- Reverse Proxy (cl01tl):
|
||||
icon: sh-traefik.svg
|
||||
description: Traefik
|
||||
href: https://traefik-cl01tl.alexlebens.net/dashboard/#/
|
||||
siteMonitor: https://traefik-cl01tl.alexlebens.net/dashboard/#/
|
||||
statusStyle: dot
|
||||
widget:
|
||||
type: traefik
|
||||
url: https://traefik-cl01tl.alexlebens.net
|
||||
- Image Cache:
|
||||
icon: sh-harbor.svg
|
||||
description: Harbor
|
||||
href: https://harbor.alexlebens.net
|
||||
siteMonitor: http://harbor-portal.harbor:80
|
||||
statusStyle: dot
|
||||
- Hardware:
|
||||
- Network Management (alexlebens.net):
|
||||
icon: sh-ubiquiti-unifi.svg
|
||||
description: Unifi
|
||||
href: https://unifi.alexlebens.net
|
||||
siteMonitor: https://unifi.alexlebens.net
|
||||
statusStyle: dot
|
||||
- Network Attached Storage:
|
||||
icon: sh-synology-light.svg
|
||||
description: Synology
|
||||
href: https://synology.alexlebens.net
|
||||
siteMonitor: https://synology.alexlebens.net
|
||||
statusStyle: dot
|
||||
widget:
|
||||
type: diskstation
|
||||
url: https://synology.alexlebens.net
|
||||
username: {{ "{{HOMEPAGE_VAR_SYNOLOGY_USER}}" }}
|
||||
password: {{ "{{HOMEPAGE_VAR_SYNOLOGY_PASSWORD}}" }}
|
||||
volume: volume_2
|
||||
- TV Tuner:
|
||||
icon: sh-hdhomerun.svg
|
||||
description: HD Homerun
|
||||
href: http://hdhr.alexlebens.net
|
||||
siteMonitor: http://hdhr.alexlebens.net
|
||||
statusStyle: dot
|
||||
- KVM:
|
||||
icon: sh-pikvm-light.svg
|
||||
description: Pi KVM
|
||||
href: https://pikvm.alexlebens.net
|
||||
siteMonitor: https://pikvm.alexlebens.net
|
||||
statusStyle: dot
|
||||
- Storage:
|
||||
- Cluster Storage:
|
||||
icon: ceph.png
|
||||
description: Ceph
|
||||
href: https://ceph.alexlebens.net
|
||||
siteMonitor: http://rook-ceph-mgr-dashboard.rook-ceph:7000
|
||||
statusStyle: dot
|
||||
- Database:
|
||||
icon: sh-pgadmin-light.svg
|
||||
description: PGAdmin
|
||||
href: https://pgadmin.alexlebens.net
|
||||
siteMonitor: http://pgadmin.pgadmin:80
|
||||
statusStyle: dot
|
||||
- Secrets:
|
||||
icon: sh-hashicorp-vault.svg
|
||||
description: Vault
|
||||
href: https://vault.alexlebens.net
|
||||
siteMonitor: http://vault.vault:8200
|
||||
statusStyle: dot
|
||||
- Object Storage (Outline):
|
||||
icon: sh-minio.svg
|
||||
description: Minio Tenant
|
||||
href: https://minio-outline.alexlebens.net
|
||||
siteMonitor: http://minio-outline-console.outline:9090
|
||||
statusStyle: dot
|
||||
- Object Storage (Directus):
|
||||
icon: sh-minio.svg
|
||||
description: Minio Tenant
|
||||
href: https://minio-directus.alexlebens.net
|
||||
siteMonitor: http://minio-directus-console.directus:9090
|
||||
statusStyle: dot
|
||||
- TV Shows:
|
||||
- Sonarr:
|
||||
icon: sh-sonarr.svg
|
||||
description: TV Shows
|
||||
href: https://sonarr.alexlebens.net
|
||||
siteMonitor: http://sonarr4.sonarr4:80
|
||||
statusStyle: dot
|
||||
widget:
|
||||
type: sonarr
|
||||
url: http://sonarr4.sonarr4:80
|
||||
key: {{ "{{HOMEPAGE_VAR_SONARR_KEY}}" }}
|
||||
fields: ["wanted", "queued", "series"]
|
||||
enableQueue: false
|
||||
- Sonarr 4K:
|
||||
icon: sh-sonarr.svg
|
||||
description: TV Shows 4K
|
||||
href: https://sonarr-4k.alexlebens.net
|
||||
siteMonitor: http://sonarr4-4k.sonarr4-4k:80
|
||||
statusStyle: dot
|
||||
widget:
|
||||
type: sonarr
|
||||
url: http://sonarr4-4k.sonarr4-4k:80
|
||||
key: {{ "{{HOMEPAGE_VAR_SONARR4K_KEY}}" }}
|
||||
fields: ["wanted", "queued", "series"]
|
||||
enableQueue: false
|
||||
- Sonarr Anime:
|
||||
icon: sh-sonarr.svg
|
||||
description: Anime Shows
|
||||
href: https://sonarr-anime.alexlebens.net
|
||||
siteMonitor: http://sonarr4-anime.sonarr4-anime:80
|
||||
statusStyle: dot
|
||||
widget:
|
||||
type: sonarr
|
||||
url: http://sonarr4-anime.sonarr4-anime:80
|
||||
key: {{ "{{HOMEPAGE_VAR_SONARRANIME_KEY}}" }}
|
||||
fields: ["wanted", "queued", "series"]
|
||||
enableQueue: false
|
||||
- Movies:
|
||||
- Radarr:
|
||||
icon: sh-radarr.svg
|
||||
description: Movies
|
||||
href: https://radarr.alexlebens.net
|
||||
siteMonitor: http://radarr5.radarr5:80
|
||||
statusStyle: dot
|
||||
widget:
|
||||
type: radarr
|
||||
url: http://radarr5.radarr5:80
|
||||
key: {{ "{{HOMEPAGE_VAR_RADARR_KEY}}" }}
|
||||
fields: ["wanted", "queued", "movies"]
|
||||
enableQueue: false
|
||||
- Radarr 4K:
|
||||
icon: sh-radarr.svg
|
||||
description: Movies 4K
|
||||
href: https://radarr-4k.alexlebens.net
|
||||
siteMonitor: http://radarr5-4k.radarr5-4k:80
|
||||
statusStyle: dot
|
||||
widget:
|
||||
type: radarr
|
||||
url: http://radarr5-4k.radarr5-4k:80
|
||||
key: {{ "{{HOMEPAGE_VAR_RADARR4K_KEY}}" }}
|
||||
fields: ["wanted", "queued", "movies"]
|
||||
enableQueue: false
|
||||
- Radarr Anime:
|
||||
icon: sh-radarr.svg
|
||||
description: Anime Movies
|
||||
href: https://radarr-anime.alexlebens.net
|
||||
siteMonitor: http://radarr5-anime.radarr5-anime:80
|
||||
statusStyle: dot
|
||||
widget:
|
||||
type: radarr
|
||||
url: http://radarr5-anime.radarr5-anime:80
|
||||
key: {{ "{{HOMEPAGE_VAR_RADARRANIME_KEY}}" }}
|
||||
fields: ["wanted", "queued", "movies"]
|
||||
enableQueue: false
|
||||
- Radarr Stand Up:
|
||||
icon: sh-radarr.svg
|
||||
description: Stand Up
|
||||
href: https://radarr-standup.alexlebens.net
|
||||
siteMonitor: http://radarr5-standup.radarr5-standup:80
|
||||
statusStyle: dot
|
||||
widget:
|
||||
type: radarr
|
||||
url: http://radarr5-standup.radarr5-standup:80
|
||||
key: {{ "{{HOMEPAGE_VAR_RADARRSTANDUP_KEY}}" }}
|
||||
fields: ["wanted", "queued", "movies"]
|
||||
enableQueue: false
|
||||
- Music:
|
||||
- Lidarr:
|
||||
icon: sh-lidarr.svg
|
||||
description: Music
|
||||
href: https://lidarr.alexlebens.net
|
||||
siteMonitor: http://lidarr2.lidarr2:80
|
||||
statusStyle: dot
|
||||
widget:
|
||||
type: lidarr
|
||||
url: http://lidarr2.lidarr2:80
|
||||
key: {{ "{{HOMEPAGE_VAR_LIDARR2_KEY}}" }}
|
||||
fields: ["wanted", "queued", "artists"]
|
||||
- LidaTube:
|
||||
icon: sh-lidatube.png
|
||||
description: Searches for Music
|
||||
href: https://lidatube.alexlebens.net
|
||||
siteMonitor: http://lidatube.lidatube:80
|
||||
statusStyle: dot
|
||||
- Services (Servarr):
|
||||
- qBittorrent:
|
||||
icon: sh-qbittorrent.svg
|
||||
description: P2P Downloads
|
||||
href: https://qbittorrent.alexlebens.net
|
||||
siteMonitor: http://qbittorrent.qbittorrent:8080
|
||||
statusStyle: dot
|
||||
widget:
|
||||
type: qbittorrent
|
||||
url: http://qbittorrent.qbittorrent:8080
|
||||
enableLeechProgress: true
|
||||
- Prowlarr:
|
||||
icon: sh-prowlarr.svg
|
||||
description: Indexers
|
||||
href: https://prowlarr.alexlebens.net
|
||||
siteMonitor: http://prowlarr.prowlarr:80
|
||||
statusStyle: dot
|
||||
- Soulseek:
|
||||
icon: sh-slskd.png
|
||||
description: slskd
|
||||
href: https://slskd.alexlebens.net
|
||||
siteMonitor: http://slskd.slskd:5030
|
||||
statusStyle: dot
|
||||
- CWA Downloader:
|
||||
icon: sh-calibre.png
|
||||
description: Calibre Web Automated Book Downloader
|
||||
href: https://calibre-downloader.alexlebens.net
|
||||
siteMonitor: http://calibre-web-automated-downloader.calibre-web-automated:8084
|
||||
statusStyle: dot
|
||||
- Tdarr:
|
||||
icon: sh-tdarr.png
|
||||
description: Media transcoding and health checks
|
||||
href: https://tdarr.alexlebens.net
|
||||
siteMonitor: http://tdarr-web.tdarr:8265
|
||||
statusStyle: dot
|
||||
widget:
|
||||
type: tdarr
|
||||
url: http://tdarr-web.tdarr:8265
|
||||
- Other Homes:
|
||||
- Dev:
|
||||
icon: sh-homepage.png
|
||||
description: Public Homepage
|
||||
href: https://home.alexlebens.dev
|
||||
siteMonitor: https://home.alexlebens.dev
|
||||
statusStyle: dot
|
||||
- Lebens Home:
|
||||
icon: sh-homepage.png
|
||||
description: Lebens Homepage
|
||||
href: https://home-ps10rp.boreal-beaufort.ts.net
|
||||
siteMonitor: https://home-ps10rp.boreal-beaufort.ts.net
|
||||
statusStyle: dot
|
||||
bookmarks.yaml: |
|
||||
- External Services:
|
||||
- Github:
|
||||
- abbr: GH
|
||||
href: https://github.com/alexlebens/infrastructure
|
||||
- Renovate:
|
||||
- abbr: RN
|
||||
href: https://developer.mend.io/[platform]/alexlebens/infrastructure
|
||||
- Digital Ocean:
|
||||
- abbr: DO
|
||||
href: https://www.digitalocean.com/
|
||||
- AWS:
|
||||
- abbr: AW
|
||||
href: https://aws.amazon.com/console/
|
||||
- Cloudflare:
|
||||
- abbr: CF
|
||||
href: https://dash.cloudflare.com/b76e303258b84076ee01fd0f515c0768
|
||||
- Tailscale:
|
||||
- abbr: TS
|
||||
href: https://login.tailscale.com/admin/machines
|
||||
- ProtonVPN:
|
||||
- abbr: PV
|
||||
href: https://account.protonvpn.com/
|
||||
- Unifi:
|
||||
- abbr: UF
|
||||
href: https://unifi.ui.com/
|
||||
- Pushover:
|
||||
- abbr: PO
|
||||
href: https://pushover.net
|
||||
- ReCaptcha:
|
||||
- abbr: RC
|
||||
href: https://www.google.com/recaptcha/admin/site/698983587
|
||||
- Trackers:
|
||||
- Torrentleech:
|
||||
- abbr: TL
|
||||
href: https://www.torrentleech.org
|
||||
- Avistaz:
|
||||
- abbr: AV
|
||||
href: https://avistaz.to
|
||||
- Cinemaz:
|
||||
- abbr: CM
|
||||
href: https://cinemaz.to
|
||||
- Cathode Ray Tube:
|
||||
- abbr: CRT
|
||||
href: https://www.cathode-ray.tube
|
||||
- Alpha Ratio:
|
||||
- abbr: AL
|
||||
href: https://alpharatio.cc/
|
||||
- MV Group:
|
||||
- abbr: MV
|
||||
href: https://forums.mvgroup.org
|
||||
service:
|
||||
http:
|
||||
controller: main
|
||||
ports:
|
||||
http:
|
||||
port: 80
|
||||
targetPort: 3000
|
||||
protocol: HTTP
|
||||
persistence:
|
||||
config:
|
||||
enabled: true
|
||||
type: configMap
|
||||
name: homepage-config
|
||||
advancedMounts:
|
||||
main:
|
||||
main:
|
||||
- path: /app/config/bookmarks.yaml
|
||||
readOnly: true
|
||||
mountPropagation: None
|
||||
subPath: bookmarks.yaml
|
||||
- path: /app/config/docker.yaml
|
||||
readOnly: true
|
||||
mountPropagation: None
|
||||
subPath: docker.yaml
|
||||
- path: /app/config/kubernetes.yaml
|
||||
readOnly: true
|
||||
mountPropagation: None
|
||||
subPath: kubernetes.yaml
|
||||
- path: /app/config/services.yaml
|
||||
readOnly: true
|
||||
mountPropagation: None
|
||||
subPath: services.yaml
|
||||
- path: /app/config/settings.yaml
|
||||
readOnly: true
|
||||
mountPropagation: None
|
||||
subPath: settings.yaml
|
||||
- path: /app/config/widgets.yaml
|
||||
readOnly: true
|
||||
mountPropagation: None
|
||||
subPath: widgets.yaml
|
Reference in New Issue
Block a user