
インターネットにアクセスできない Red Hat サーバー (サーバー 1) があります。インターネットにアクセスでき、サーバー 1 にもアクセスできる別の Red Hat サーバー (サーバー 2) もあります。
サーバー 1 にプログラムをインストールする必要があります。この場合、pm2 というノード モジュールに関するものです。これをどのように実行できるかわかりません。サーバー 2 にモジュールをインストールしてから、サーバー 1 にアップロードする必要がありますか? または、一般的に、この状況ではどのようなアプローチを取る必要がありますか?
答え1
パッケージ (.rpm で終わる必要があります) をサーバー 2 にダウンロードし、ファイルをサーバー 1 に scp で転送して、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 をインストールする十分に説明されています。ターゲット マシン上のどこに配置するかを決定し、そこで解凍します。
参考文献:
このコマンドはパッケージとそれが依存するパッケージをインストールします。パッケージにshrinkwrapファイルがある場合は、依存関係のインストールはそれに基づいて行われます。npm-shrinkwrap。
npm の問題 #1349 - すべての依存関係を持つパッケージをオフラインでインストールするにはどうすればよいですか?は、コメント(および詳細)をしています:
bundledDependencies
の依存関係をリストしpackage.json
、実行します。npm pack
tarballを作成します。それを他のマシンに転送し、npm install<tarball>
または、手動で開けることもできます。