Three containers move across as three deployments: the app, meilisearch, and
the headless-chrome renderer. Data (4.2M of SQLite + assets, 3.3M meilisearch
index) copied from /DATA/AppData/karakeep on the Orange Pi to gvolume0 at
/mnt/gvolume0/karakeep/{data,meilisearch}.
MEILI_MASTER_KEY and NEXTAUTH_SECRET are carried over unchanged, not
regenerated -- the first unlocks the existing index and the second signs
existing sessions. OPENAI_API_KEY was already empty on CasaOS, so AI tagging
was unused; the key is kept but blank.
NEXTAUTH_URL changes from http://localhost:14592 to https://keep.wittyoneoff.com
so NextAuth builds correct callback URLs behind the proxy.
chrome.yaml passes EXACTLY the args the CasaOS container used. Adding
--remote-debugging-address/--remote-debugging-port breaks it: the image's
entrypoint runs Chrome on 127.0.0.1:9223 and socat-proxies 9222 -> 9223, so
overriding those flags leaves socat retrying a dead port forever. Learned the
hard way.
App and meilisearch use strategy: Recreate -- single-writer SQLite on a
ReadWriteOnce volume, same rule as apps/tududi.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
60 lines
1.3 KiB
YAML
60 lines
1.3 KiB
YAML
# Migrated off CasaOS on the Orange Pi (/DATA/AppData/karakeep) 2026-09-21.
|
|
# Two volumes because the app and meilisearch are separate pods.
|
|
# karakeep keeps SQLite (db.db, queue.db) in DATA_DIR, so both deployments use
|
|
# strategy: Recreate -- exactly the single-writer rule apps/tududi follows.
|
|
apiVersion: v1
|
|
kind: PersistentVolume
|
|
metadata:
|
|
name: karakeep-pv
|
|
spec:
|
|
capacity:
|
|
storage: 10Gi
|
|
accessModes:
|
|
- ReadWriteOnce
|
|
persistentVolumeReclaimPolicy: Retain
|
|
volumeMode: Filesystem
|
|
hostPath:
|
|
path: /mnt/gvolume0/karakeep/data
|
|
---
|
|
apiVersion: v1
|
|
kind: PersistentVolumeClaim
|
|
metadata:
|
|
name: karakeep
|
|
namespace: karakeep
|
|
spec:
|
|
accessModes:
|
|
- ReadWriteOnce
|
|
resources:
|
|
requests:
|
|
storage: 10Gi
|
|
storageClassName: ""
|
|
volumeName: karakeep-pv
|
|
---
|
|
apiVersion: v1
|
|
kind: PersistentVolume
|
|
metadata:
|
|
name: karakeep-meilisearch-pv
|
|
spec:
|
|
capacity:
|
|
storage: 5Gi
|
|
accessModes:
|
|
- ReadWriteOnce
|
|
persistentVolumeReclaimPolicy: Retain
|
|
volumeMode: Filesystem
|
|
hostPath:
|
|
path: /mnt/gvolume0/karakeep/meilisearch
|
|
---
|
|
apiVersion: v1
|
|
kind: PersistentVolumeClaim
|
|
metadata:
|
|
name: karakeep-meilisearch
|
|
namespace: karakeep
|
|
spec:
|
|
accessModes:
|
|
- ReadWriteOnce
|
|
resources:
|
|
requests:
|
|
storage: 5Gi
|
|
storageClassName: ""
|
|
volumeName: karakeep-meilisearch-pv
|