fix: initcfg dead code — chdir/no-crt directives never applied at runtime #6
Labels
No labels
in-progress
needs-review
ready
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
wazolab/cloudron-copyparty#6
Loading…
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?
Bug
The Dockerfile creates
/app/code/initcfgwith critical directives:But
start.shlaunches copyparty with-c /app/data/cfg/copyparty.confonly —initcfgis never passed to the process.Consequences
chdir: /app/data/statenot applied → copyparty uses its CWD =/app/code(read-only at runtime) to write its SQLite index and state files → crash on first indexing operation (e2dsa/e2tsflags enabled)no-crtnot applied → copyparty attempts TLS certificate generation in/app/code→ same read-only crash% /app/data/cfgnot applied → the user config directory include is ignoredFix
Change the launch command in
start.shto:This way
initcfgapplieschdir,no-crt, and includes/app/data/cfg(which contains the user config written on first run).References
Cloudron packaging rule: "Treat the filesystem as readonly at runtime. Write only to
/tmp,/run, and/app/data"