TryGhostOSS
    Ghost
    Improved production image pull time by deduplicating chown layers no ref - on overlayfs a `chown -R` copies every touched file into a new layer, so the core stage's `chown -R nobody:nogroup /home/ghost/*` duplicated node_modules (~600MB) and the full stage's `chown -R core/built/admin` duplicated the admin build (~80MB) — inflating every pull of the ghost / ghost-e2e images, which the 12 E2E shards showed spending most of their setup time loading - set ownership at COPY time (COPY --chown) instead, and move the production node_modules into a discarded `deps` stage copied in once via COPY --chown --from, so app code is stored once with its final ownership - ownership model is unchanged (verified byte-for-byte: app code nobody:nogroup, content/log ghost, home ghost; runtime user still cannot modify app code, and better-sqlite3's native binary still loads after the multi-stage copy) - build-essential/python3 now live only in the deps stage, so the shipped node_modules layer no longer carries apt install/purge churn either
    nx run-many -t lint -p ghost-monorepo
Succeeded
CI Pipeline Execution

nx run-many -t lint -p ghost-monorepo

Click to copy
Linux
4 CPU cores
67b15af229017

There are no tasks associated with this run.

If you believe this is an error, please check that the command, target, and project settings are correctly configured.

© 2026 - Nx Cloud

Terms of ServicePrivacy PolicyChangelogStatusDocsContact Nx CloudPricingCompany@NxDevTools