ReactというよりもNode.jsの、いやnpmの話なのかもしれない。
npmが入っていないところにnpmをインストールするというのは、
昔のzipファイルをunzipの入っていない環境で展開するのと
同じような問題だけど、事は昔ほど簡単ではなくて、そのnpmの
インストールにネットワークが必要という、ちょっと困った状況に
なっている。
かつては、タマゴをもってくるなりニワトリをもってくれば
何とかなったけど、際限なく広がるニワトリのコミュニティが必要となると
話は別だ。
そんなときは、npmboxを使えば良いらしい。
本家:
https://github.com/arei/npmbox
手順通りに従って操作すると、
- グローバル環境にインストール(要root)
npm install -g npmbox
- パッケージング
npmbox npmbox
すると、カレントディレクトリにnpmbox.npmboxというファイルができる。
何だろう?ということで file npmbox.npmbox
で確認すると
npmbox.npmbox: gzip compressed data, from Unix
だそうで。
3. そのnpmbox.npmboxをインストール先にコピー
容量は9MBくらい。
4. 仮のディレクトリを作成して、そこで展開
tar xvzf npmbox.npmnox
すると .npmbox.cacheができる。
5. npmboxをインストール(要root)
npm install --global --cache ./.npmbox.cache --optional --cache-min 99999999999 --shrinkwrap false npmbox
このとき、npmがないと実行できないので、あらかじめダウンロードしてあったNodeパッケージ内のbinディレクトリにパスを通しておいた。
今回の私の環境の場合はこれ:
https://nodejs.org/dist/v6.11.0/node-v6.11.0-linux-x64.tar.xz
npmboxの実行プログラムは、このnodeのbinに入った。
6. インターネットに接続されている方でnpmのパッケージを作成
npmbox npm
するとnpm.npmboxができる
7. npm.npmboxをインストールしたいホストにコピーして、以下のコマンドでインストール
npmunbox npm
npmboxじゃなくて、npmunboxね
- インターネットに接続しているマシンで、reactをインストール
npm install -g react - npmboxでパッケージング
npmbox react - 9でできたreact.npmboxをインストール先の環境にコピー
- npmunbox react.npmbox (.npmboxの拡張子はあってもなくてもいいらしい)