我需要在離線服務器上安裝「全局」npm應用程序。如何在離線服務器上安裝npm -g
這是很容易安裝一個普通的應用程序:
npm install
,然後收拾生成的文件。手動或使用npm包裝。
但是,如何在沒有Internet的情況下安裝全局應用程序(具有某種安裝腳本),如永遠?
npm install -g forever
我需要在離線服務器上安裝「全局」npm應用程序。如何在離線服務器上安裝npm -g
這是很容易安裝一個普通的應用程序:
npm install
,然後收拾生成的文件。手動或使用npm包裝。
但是,如何在沒有Internet的情況下安裝全局應用程序(具有某種安裝腳本),如永遠?
npm install -g forever
嘗試npmbox,它是npmzip的新名稱這將允許您通過一個文件安裝離線npm包
你可以從tarball文件安裝東西,檢查出npm documentation。你可以在npm view forever dist.tarball
找到永久tarball的URL並下載它。嘗試這樣的:
curl -so forever.tar.gz `npm view forever dist.tarball 2> /dev/null`
npm install ./forever.tar.gz -g
但是,你可能必須這樣做的所有依賴關係以及。可能有更好的方法,但這是我在搜索中找到的。
感謝您的回答。然而,它立即試圖從互聯網拉入依賴關係。 * npm http GET https://registry.npmjs.org/broadway* –
當然,您需要首先安裝任何依賴項。 – Kato
你是對的加藤。但是如何? **有很多**永遠**的依賴關係。 –
我創建offline-npm f或者以乾淨的方式安裝所有的依賴項。對於沒有使用node-gyp的模塊,所有內容都應該按照描述工作。
如果您需要node-gyp
(通常在線安裝),請考慮將〜/ .node-gyp複製到該脫機機器。
在package.json中列出bundledDependencies
中的依賴關係,然後運行npm pack
來創建tarball。把它交給另一臺機器,或者npm install <tarball>
,或者只是手動打開它。
嘛....一天後,試圖使其與上述文獻工作(npmbox或離線NPM)想出了辦法要簡單得多。感謝npmbox,我不得不說。 這個想法是保持在線訪問的實例的緩存,然後在離線的實例中使用它。
在機器與互聯網:
1 - 明確NPM緩存:npm cache clear
2 - 安裝包,可以說,它的xyz:npm install -g **package.x.y.z**
3 - 到一個文件夾中複製緩存。 ..讓我們把它叫做什麼(我假設NPM緩存是在根文件夾,不是說絕對的把握): cp -R /.npm/* **/cache-whatever-folder**
在機器沒有互聯網:
4 - 利用這個緩存的任何文件夾到例如,沒有互聯網和,乾淨的高速緩存後,用它安裝(我不會指明如何將文件夾:)
npm cache clear
npm install --global --cache **/cache-whatever-folder** --optional --cache-min 99999999999 --shrinkwrap false **package.x.y.z**
完成
INSTALL PM2 OFFLINE: -
測試在節點v6.10.3和NPM-3.10.10在RHEL-7
轉到機互聯網連接: -
#npm install -g npmbox
#npmbox npmbox
#scp npmbox.npmbox [email protected]:.
轉到機器沒有互聯網連接: -
#ssh [email protected]
#tar --no-same-owner --no-same-permissions -xvzf npmbox.npmbox
#npm install --global --cache ./.npmbox.cache --optional --cache-min 99999999999 --shrinkwrap false npmbox
轉到機的網絡連接: -
#npm install pm2 -g
#npmbox pm2
#scp pm2.npmbox [email protected]:.
轉到機器沒有互聯網連接: -
#npmunbox pm2.npmbox --global
#pm2 ls
我安裝了npmbox pn服務器,但是如何安裝pm2使用? –
對不起,但沒有爲我工作。花了相當多的時間嘗試,直到被終止。沒有找到如何和張貼在下面。 –