migrate karakeep
Some checks failed
lint-test-helm / helm-lint (push) Successful in 12s
renovate / renovate (push) Has been cancelled

This commit is contained in:
2025-07-27 19:35:01 -05:00
parent b229a801ee
commit fe9afb3315
6 changed files with 84 additions and 19 deletions

View File

@@ -1,9 +1,8 @@
apiVersion: v2 apiVersion: v2
name: hoarder name: karakeep
version: 1.0.0 version: 1.0.0
description: Karakeep description: Karakeep
keywords: keywords:
- hoarder
- karakeep - karakeep
- bookmarks - bookmarks
home: https://wiki.alexlebens.dev/s/f8177591-8253-4e21-82d5-a556f0aeafad home: https://wiki.alexlebens.dev/s/f8177591-8253-4e21-82d5-a556f0aeafad
@@ -19,7 +18,7 @@ maintainers:
- name: alexlebens - name: alexlebens
dependencies: dependencies:
- name: app-template - name: app-template
alias: hoarder alias: karakeep
repository: https://bjw-s-labs.github.io/helm-charts/ repository: https://bjw-s-labs.github.io/helm-charts/
version: 4.1.2 version: 4.1.2
- name: meilisearch - name: meilisearch
@@ -30,4 +29,4 @@ dependencies:
repository: oci://harbor.alexlebens.net/helm-charts repository: oci://harbor.alexlebens.net/helm-charts
version: 1.18.0 version: 1.18.0
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/webp/karakeep.webp icon: https://cdn.jsdelivr.net/gh/selfhst/icons/webp/karakeep.webp
appVersion: 0.24.1 appVersion: 0.26.0

View File

@@ -19,6 +19,13 @@ spec:
key: /cl01tl/karakeep/key key: /cl01tl/karakeep/key
metadataPolicy: None metadataPolicy: None
property: key property: key
- secretKey: prometheus-token
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /cl01tl/karakeep/prometheus-token
metadataPolicy: None
property: key
--- ---
apiVersion: external-secrets.io/v1 apiVersion: external-secrets.io/v1
@@ -100,10 +107,10 @@ spec:
apiVersion: external-secrets.io/v1 apiVersion: external-secrets.io/v1
kind: ExternalSecret kind: ExternalSecret
metadata: metadata:
name: hoarder-data-backup-secret name: karakeep-data-backup-secret
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: hoarder-data-backup-secret app.kubernetes.io/name: karakeep-data-backup-secret
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }} app.kubernetes.io/part-of: {{ .Release.Name }}
spec: spec:
@@ -115,7 +122,7 @@ spec:
mergePolicy: Merge mergePolicy: Merge
engineVersion: v2 engineVersion: v2
data: data:
RESTIC_REPOSITORY: "{{ `{{ .BUCKET_ENDPOINT }}` }}/hoarder/hoarder-data" RESTIC_REPOSITORY: "{{ `{{ .BUCKET_ENDPOINT }}` }}/karakeep/karakeep-data"
data: data:
- secretKey: BUCKET_ENDPOINT - secretKey: BUCKET_ENDPOINT
remoteRef: remoteRef:

View File

@@ -0,0 +1,11 @@
apiVersion: objectbucket.io/v1alpha1
kind: ObjectBucketClaim
metadata:
name: ceph-bucket-karakeep
labels:
app.kubernetes.io/name: ceph-bucket-karakeep
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
generateBucketName: bucket-karakeep
storageClassName: ceph-bucket

View File

@@ -1,19 +1,19 @@
apiVersion: volsync.backube/v1alpha1 apiVersion: volsync.backube/v1alpha1
kind: ReplicationSource kind: ReplicationSource
metadata: metadata:
name: hoarder-data-backup-source name: karakeep-data-backup-source
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: hoarder-data-backup-source app.kubernetes.io/name: karakeep-data-backup-source
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }} app.kubernetes.io/part-of: {{ .Release.Name }}
spec: spec:
sourcePVC: hoarder-data sourcePVC: karakeep-data
trigger: trigger:
schedule: 0 4 * * * schedule: 0 4 * * *
restic: restic:
pruneIntervalDays: 7 pruneIntervalDays: 7
repository: hoarder-data-backup-secret repository: karakeep-data-backup-secret
retain: retain:
hourly: 1 hourly: 1
daily: 3 daily: 3

View File

@@ -0,0 +1,23 @@
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: karakeep
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: karakeep
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
endpoints:
- port: http
interval: 30s
scrapeTimeout: 15s
path: /api/metrics
authorization:
credentials:
key: prometheus-token
name: karakeep-key-secret
selector:
matchLabels:
app.kubernetes.io/name: karakeep
app.kubernetes.io/instance: {{ .Release.Name }}

View File

@@ -1,4 +1,4 @@
hoarder: karakeep:
controllers: controllers:
main: main:
type: deployment type: deployment
@@ -9,7 +9,7 @@ hoarder:
main: main:
image: image:
repository: ghcr.io/karakeep-app/karakeep repository: ghcr.io/karakeep-app/karakeep
tag: 0.25.0 tag: 0.26.0
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
env: env:
- name: DATA_DIR - name: DATA_DIR
@@ -21,15 +21,41 @@ hoarder:
secretKeyRef: secretKeyRef:
name: karakeep-key-secret name: karakeep-key-secret
key: key key: key
- name: PROMETHEUS_AUTH_TOKEN
valueFrom:
secretKeyRef:
name: karakeep-key-secret
key: prometheus-token
- name: ASSET_STORE_S3_ENDPOINT
value: http://rook-ceph-rgw-ceph-objectstore.rook-ceph.svc:80
- name: ASSET_STORE_S3_REGION
value: us-east-1
- name: ASSET_STORE_S3_BUCKET
valueFrom:
secretKeyRef:
name: ceph-bucket-karakeep
key: BUCKET_NAME
- name: ASSET_STORE_S3_ACCESS_KEY_ID
valueFrom:
secretKeyRef:
name: ceph-bucket-karakeep
key: AWS_ACCESS_KEY_ID
- name: ASSET_STORE_S3_SECRET_ACCESS_KEY
valueFrom:
secretKeyRef:
name: ceph-bucket-karakeep
key: AWS_SECRET_ACCESS_KEY
- name: ASSET_STORE_S3_FORCE_PATH_STYLE
value: true
- name: MEILI_ADDR - name: MEILI_ADDR
value: http://hoarder-meilisearch.hoarder:7700 value: http://karakeep-meilisearch.karakeep:7700
- name: MEILI_MASTER_KEY - name: MEILI_MASTER_KEY
valueFrom: valueFrom:
secretKeyRef: secretKeyRef:
name: karakeep-meilisearch-master-key-secret name: karakeep-meilisearch-master-key-secret
key: MEILI_MASTER_KEY key: MEILI_MASTER_KEY
- name: BROWSER_WEB_URL - name: BROWSER_WEB_URL
value: http://hoarder.hoarder:9222 value: http://karakeep.karakeep:9222
- name: DISABLE_SIGNUPS - name: DISABLE_SIGNUPS
value: false value: false
- name: OAUTH_PROVIDER_NAME - name: OAUTH_PROVIDER_NAME
@@ -49,13 +75,13 @@ hoarder:
name: karakeep-oidc-secret name: karakeep-oidc-secret
key: AUTHENTIK_CLIENT_SECRET key: AUTHENTIK_CLIENT_SECRET
- name: OLLAMA_BASE_URL - name: OLLAMA_BASE_URL
value: http://ollama-server-1.ollama:11434 value: http://ollama-server-3.ollama:11434
- name: OLLAMA_KEEP_ALIVE - name: OLLAMA_KEEP_ALIVE
value: 5m value: 5m
- name: INFERENCE_TEXT_MODEL - name: INFERENCE_TEXT_MODEL
value: llama3.1:8b value: gemma3:4b
- name: INFERENCE_IMAGE_MODEL - name: INFERENCE_IMAGE_MODEL
value: llama3.2-vision:11b value: granite3.2-vision:2b
- name: EMBEDDING_TEXT_MODEL - name: EMBEDDING_TEXT_MODEL
value: mxbai-embed-large value: mxbai-embed-large
- name: INFERENCE_JOB_TIMEOUT_SEC - name: INFERENCE_JOB_TIMEOUT_SEC
@@ -94,7 +120,6 @@ hoarder:
protocol: HTTP protocol: HTTP
persistence: persistence:
data: data:
forceRename: hoarder-data
storageClass: ceph-block storageClass: ceph-block
accessMode: ReadWriteOnce accessMode: ReadWriteOnce
size: 10Gi size: 10Gi