chore: Move the helm charts to their own repo

This commit is contained in:
Mohamed Bassem
2025-07-19 08:46:47 +00:00
parent 8bd3b586c6
commit f3feb59994
7 changed files with 1 additions and 240 deletions

1
charts/README.md Normal file
View File

@@ -0,0 +1 @@
The helm charts got moved to a separate repo: https://github.com/karakeep-app/helm-charts

View File

@@ -1,23 +0,0 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@@ -1,9 +0,0 @@
dependencies:
- name: common
repository: https://bjw-s-labs.github.io/helm-charts
version: 3.7.3
- name: meilisearch
repository: https://meilisearch.github.io/meilisearch-kubernetes
version: 0.12.0
digest: sha256:3e2a57756d58bd85ff03cf0dc7f0b6beb972b77fc6036d4f29421e7207a1bce0
generated: "2025-05-02T18:15:07.080331+01:00"

View File

@@ -1,13 +0,0 @@
apiVersion: v2
name: karakeep
description: A Helm chart for Karakeep
type: application
version: 0.24.1
appVersion: 0.24.1
dependencies:
- name: common
version: 3.7.3
repository: https://bjw-s-labs.github.io/helm-charts
- name: meilisearch
version: 0.12.0
repository: https://meilisearch.github.io/meilisearch-kubernetes

View File

@@ -1,38 +0,0 @@
# Karakeep Helm chart
Helm chart for deploying Karakeep along with:
- **[Meilisearch](https://github.com/meilisearch/meilisearch-kubernetes)**: for fast and lightweight full-text search
- **[Headless Chrome](https://github.com/jlandure/alpine-chrome)**: enables web page previews
This chart inherits from the [bjw-s/common](https://github.com/bjw-s/helm-charts/tree/main/charts/library/common) library.
### Configuration
| Key | Description | Default |
| ---------------------- | ---------------------------------------- | ------------------------ |
| `applicationHost` | Hostname used in ingress/service | `karakeep.domain` |
| `applicationProtocol` | Protocol for internal service references | `http` |
| `applicationSecretKey` | Secret used for app authentication | Auto-generated if `null` |
| `meilisearchMasterKey` | Meilesearch master key | Auto-generated if `null` |
#### Example with OIDC Authentication
```yaml
controllers:
karakeep:
containers:
karakeep:
env:
DISABLE_PASSWORD_AUTH: "true"
OAUTH_ALLOW_DANGEROUS_EMAIL_ACCOUNT_LINKING: "true"
OAUTH_PROVIDER_NAME: OIDC
OAUTH_SCOPE: openid email profile
OAUTH_WELLKNOWN_URL: https://auth.company/application/o/karakeep/.well-known/openid-configuration
secrets:
karakeep:
stringData:
OAUTH_CLIENT_ID: your-client-id
OAUTH_CLIENT_SECRET: your-client-secret
```

View File

@@ -1 +0,0 @@
{{ include "bjw-s.common.loader.all" . }}

View File

@@ -1,156 +0,0 @@
#
# IMPORTANT NOTE
#
# This chart inherits from the bjw-s library chart. You can check the default values/options here:
# https://github.com/bjw-s/helm-charts/tree/main/charts/library/common
#
applicationProtocol: http
applicationHost: karakeep.domain
applicationSecretKey: ~
meilisearchMasterKey: ~
controllers:
karakeep:
type: statefulset
containers:
karakeep:
image:
repository: ghcr.io/karakeep-app/karakeep
tag: "{{ .Chart.AppVersion }}"
env:
NEXTAUTH_URL: "{{ .Values.applicationProtocol }}://{{ .Values.applicationHost }}"
DATA_DIR: /data
MEILI_ADDR: "http://{{ .Release.Name }}-meilisearch:7700"
BROWSER_WEB_URL: http://{{ .Release.Name }}-chrome:9222
envFrom:
- secretRef:
name: "{{ .Release.Name }}"
- secretRef:
name: "{{ .Release.Name }}-meilesearch"
probes:
liveness:
enabled: true
spec:
initialDelaySeconds: 10
httpGet:
path: /api/health
port: 3000
readiness:
enabled: true
spec:
initialDelaySeconds: 10
httpGet:
path: /api/health
port: 3000
statefulset:
volumeClaimTemplates:
- name: data
accessMode: ReadWriteOnce
size: 2Gi
globalMounts:
- path: /data
chrome:
containers:
chrome:
image:
repository: gcr.io/zenika-hub/alpine-chrome
tag: 124
args:
- --remote-debugging-address=0.0.0.0
- --remote-debugging-port=9222
- --headless
- --hide-scrollbars
- --disable-gpu
- --disable-dev-shm-usage
probes:
liveness:
enabled: true
spec:
httpGet:
path: /
port: 9222
readiness:
enabled: true
spec:
httpGet:
path: /
port: 9222
securityContext:
allowPrivilegeEscalation: false
capabilities:
add:
- SYS_ADMIN
readOnlyRootFilesystem: true
runAsNonRoot: true
runAsUser: 1000
runAsGroup: 1000
resources:
requests:
memory: 100Mi
cpu: 500m
limits:
memory: 1Gi
cpu: 1000m
service:
karakeep:
controller: karakeep
ports:
http:
port: 3000
chrome:
controller: chrome
ports:
http:
port: 9222
secrets:
karakeep:
enabled: true
stringData:
NEXTAUTH_SECRET: "{{ default (randAlphaNum 48) .Values.applicationSecretKey }}"
meilesearch:
enabled: true
stringData:
MEILI_MASTER_KEY: "{{ default (randAlphaNum 30) .Values.meilisearchMasterKey }}"
ingress:
karakeep:
hosts:
- host: "{{ .Values.applicationHost }}"
paths:
- path: /
pathType: Prefix
service:
identifier: karakeep
port: http
persistence:
chrome-tmp:
type: emptyDir
advancedMounts:
chrome:
chrome:
- path: /tmp
readonly: false
meilisearch:
auth:
existingMasterKeySecret: "{{ .Release.Name }}-meilesearch"
environment:
MEILI_ENV: production
persistence:
enabled: true
size: 1Gi