
我有一台紅帽伺服器(伺服器 1),無法存取網路。我還有另一台紅帽伺服器(伺服器 2),它可以存取互聯網,也可以存取伺服器 1。
我需要在伺服器 1 上安裝程式。我不知道如何做到這一點。我應該在伺服器2上安裝該模組,然後將其上傳到伺服器1嗎?或者一般來說:在這種情況下應採取什麼方法?
答案1
將軟體包(應以 .rpm 結尾)下載到伺服器 2,然後將檔案 scp 到伺服器 1 並rpm -Uvh package.rpm
以 root 身分執行。
答案2
node
模組不一定以 rpm 形式打包。它可以並且確實從網路讀取(繞過 rpm 系統)。你會使用node
套件管理器(npm
)安裝到一個 tarball 中,您可以將其複製到非聯網電腦上,並且解壓縮那裡。
這網頁為pm2
表示它將透過 進行安裝(使用網路)npm
,例如
npm install pm2 -g
您可以npm pack
從那時開始製作一個 tarball。答案由楚圖爾茲爾在node.js:在 Linux 上安裝 tar.gz解釋得很好:決定將其放在目標機器上的何處並在那裡解壓。
延伸閱讀:
此命令安裝一個套件及其依賴的任何套件。如果套件有收縮文件,依賴項的安裝將由該文件驅動。看npm 收縮包裝。
npm issues #1349 - 如何離線安裝具有所有依賴項的軟體套件?,有評論(和闡述):
bundledDependencies
列出您的中的依賴項package.json
,然後執行npm pack
創建一個 tarball。將其轉移到另一台機器上,然後 npm install<tarball>
,或直接手動將其打開。