Openshift 下使用 NPM 時出現 EACCESS 錯誤的解決辦法 | Makito Log

Openshift 下使用 NPM 時出現 EACCESS 錯誤的解決辦法

Npm 是 Node.js 的包管理器,有時安裝一些新模塊都需要依靠 npm install 這個命令,但在 Openshift 這種限制多多的環境下,直接使用 npm install 這種命令安裝模塊可能會遇到各種錯誤,常見的就是本文所說的 EACCESS 錯誤。

這種錯誤通常是由權限不足導致的,在 Openshift 這種環境下也不難見到這種問題,因爲 npm 在安裝新模塊時需要一個臨時目錄,而普通用戶對環境變量中的臨時目錄是無權寫入的,因此修改一下環境變量,把它指向我們有權限讀寫的文件夾就可以解決這個問題。

使用 SSH Shell 連接到你的服務器後使用以下命令(這裏以安裝 express 爲例):

cd app-root/repo/
mkdir tmp
export OPENSHIFT_TMP_DIR="`pwd`/tmp/"
npm install express