EACCES
docker
permission_error
ai_generated
true
npm error EACCES: permission denied in Docker container during npm install
ID: docker/npm-install-eacces-docker
90%Fix Rate
90%Confidence
50Evidence
2023-01-01First Seen
Version Compatibility
| Version | Status | Introduced | Deprecated | Notes |
|---|---|---|---|---|
| 27 | active | — | — | — |
Root Cause
npm install fails inside Docker due to root user + npm cache permissions.
genericWorkarounds
-
92% success Use a non-root user in Dockerfile: USER node
FROM node:20-alpine RUN mkdir -p /app && chown node:node /app USER node WORKDIR /app
-
88% success Set npm cache directory writable: RUN npm config set cache /tmp/.npm
RUN npm config set cache /tmp/.npm
Sources: https://docs.npmjs.com/cli/v10/using-npm/config#cache
Dead Ends
Common approaches that don't work:
-
Run npm with --unsafe-perm
70% fail
Security risk and deprecated flag
Error Chain
Frequently confused with: