天天看點

jenkins build vue npm install 報無權限的異常

就是說 npm 出于安全考慮不支援以 root 使用者運作,即使你用 root 使用者身份運作了,npm 會自動轉成一個叫 nobody 的使用者來運作,而這個使用者幾乎沒有任何權限。

這樣的話如果你腳本裡有一些需要權限的操作,比如寫檔案(尤其是寫 /root/.node-gyp),就會報無權限

為了避免這種情況,要麼按照 npm 的規矩來,專門建一個用于運作 npm 的高權限使用者;要麼加 –unsafe-perm 參數,這樣就不會切換到 nobody 上,運作時是哪個使用者就是哪個使用者,即使是 root。

經常是安裝node-sass的時候會很容易出現因為權限不夠無法建立目錄的問題

是以最終在jenkins配置的指令如下:

npm cache clean -f

npm install --unsafe-perm=true

rm -rf ./dist/*

npm run build:prod

繼續閱讀