Permission denied error when trying to install pnpm via Corepack as node user
Nessuno ha ancora preso questa issue.
- Lingua principale
- Dockerfile
- Stelle
- 8.6k
- Fork
- 2k
- Merge medio
- 10h 19m
- PR unite (30g)
- 16
Descrizione
Environment
- Node.js Version: 16.15.0
- Image Tag: lts-alpine
Expected Behavior
I should be able to install pnpm using Corepack as a non-privilegied user.
Current Behavior
When I try to install pnpm via Corepack (corepack enable) as non-privilegied user (-u node), I get the following error:
/app $ corepack enable
Internal Error: EACCES: permission denied, symlink '../lib/node_modules/corepack/dist/pnpm.js' -> '/usr/local/bin/pnpm'
Error: EACCES: permission denied, symlink '../lib/node_modules/corepack/dist/pnpm.js' -> '/usr/local/bin/pnpm'
/app $
Running corepack enable as root work as expected.
docker run -it -v $(pwd):/app node:lts-alpine /bin/sh

Steps to Reproduce
-
Create an empty project with the following
package.json. ThepackageManagerproperty is important here.{ "name": "docker-node-pnpm", "version": "1.0.0", "private": true, "packageManager": "pnpm@7.1.7" } -
Run the container as a non-privilegied user:
docker run -it -v $(pwd):/app -u node node:lts-alpine /bin/sh -
cd /app -
corepack enable<-- This should fail -
corepack prepare -
pnpm install
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia riproducendo il problema con i comandi Docker documentati per node:lts-alpine e l’utente non privilegiato -u node. Esamina come l’immagine configura Corepack e i percorsi scrivibili; il lavoro è completato quando corepack enable riesce come node e il flusso documentato di installazione di pnpm funziona senza root.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- docker, node.js
- Ambito
- devops, infrastructure
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Attiva
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 58/100