Harden container: mount data volume outside /app and make /app read-only #143
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Idee
De backend-container schrijft runtime-data (geparkeerde bijlagen; in dev ook de SQLite-db) nu onder
/app/data(data_dir="./data"+WORKDIR /app). Zolang de schrijfbare datamap ín/appzit, kan/appniet read-only gemount worden.Voorstel: mount het persistente volume op een pad buiten
/app(bijv./data) viaWAGGLE_DATA_DIR=/data, en maak de/app-filesystemlaag read-only/immutable. Dat is een gangbare container-hardening (readOnlyRootFilesystem/ read-only/app) en voorkomt bovendien een toekomstige botsing als het image ooit zelf iets onder/app/datazou shippen.Werk
/data(of/var/lib/waggle),WAGGLE_DATA_DIRzetten. De code ondersteunt dit al; de SQLite-db volgt sinds recentdata_dir.securityContext:readOnlyRootFilesystem: trueop de backend-container;fsGroup/ownership zo dat uid 10001 (waggle) op het volume kan schrijven (een verse mount overschaduwt de image-chown)./appzijn (bijv. tmp/caches) die dan eenemptyDirnodig hebben.containers/backend/Containerfile+docs/deployment.mdbijwerken (mountpad/app/data-> extern pad).Context
Komt uit de review-discussie rond de kaartloze-outbox-bijlagen (PR #140, "nieuw bericht plannen" fase 2a).