feat(notesnook): migrate self-hosted Notesnook to k3s

Adds apps/notesnook (namespace, config, mongo rs0 StatefulSet, minio,
identity/sync/sse/monograph deployments + Traefik/cert-manager ingresses)
and argocd/notesnook.yaml. Secret applied out-of-band (only .example committed).
Includes design spec + implementation plan under docs/superpowers.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Alex
2026-07-15 22:33:56 -07:00
parent 08cb555ce9
commit 4b801e3444
27 changed files with 1995 additions and 0 deletions
+27
View File
@@ -0,0 +1,27 @@
apiVersion: batch/v1
kind: Job
metadata:
name: notesnook-db-init
namespace: notesnook
annotations:
argocd.argoproj.io/hook: PostSync
argocd.argoproj.io/hook-delete-policy: BeforeHookCreation
spec:
backoffLimit: 20
template:
spec:
restartPolicy: OnFailure
containers:
- name: rs-init
image: mongo:7.0.12
command: ["bash", "-c"]
args:
- |
until mongosh mongodb://notesnook-db:27017 --quiet --eval 'db.runCommand("ping").ok' ; do
echo "waiting for mongod..."; sleep 3;
done
mongosh mongodb://notesnook-db:27017 --quiet --eval '
try { rs.status() }
catch (e) { rs.initiate({_id:"rs0", members:[{_id:0, host:"notesnook-db:27017"}]}) }
'
echo "replica set ready"