nodebrewをシステムワイドにインストールしてみる?

下書きのままのこってる記事あるんだけど

サーバーにnodejsをインストールしよう!

実はこの鯖、ずっとnodeを入れようとして入れずに放置してきてた。もちろんrpmリポジトリから入れておくべきなのかもしれないがやはりバージョン管理ツール使ったほうが便利な気がするのでnodebrewで入れたい。

そんで色々探してみたけど何故かそれっぽいシステムワイドで本番環境に導入するなんて記事が見つからない。ndenvやnvmならいっぱいでてくるのに…

とりあえずまずは手元の実験環境でやってみる。

今回のメインはこのメモ(予定)

環境と予定

  • CentOS 6.5/7.0 (本番/実験) 本来なら合わせるべきなんだろうけどまあ変わらないはず…
  • nodebrewの仕様的に環境はそこまで書かなくてもいいよね?
  • PATHの設定はもちろん一か所の記述で。

  • npmモジュールとかのインストール先っていっしょになるよね?
  • /opt/nodebrewにインストール
  • インストールは基本root作業(めんどいから)

インストール先を環境変数で指定できる!

幸いにもnodebrewにはインストール先をNODEBREW_ROOTの値で変更できる機能が用意されている。
よって、それを設定してからsetupを打ってやれば任意の場所にはいるお!

無事/opt/nodebrewにインストールされたら指示に従って…とは少し違うけど/etc/profile.d/nodebrew.shに次の(ってか画面で指示されるやつと上に書いた)2行を書き込む。

ついでにbash(zsh)-completionも入れておく。(事前にbash-completionが有効化されていること)

profileを一回読み直すため念の為ログアウト/ログインしなおす。

で、ちなみにこの時点でsudo nodebrewしたらそんなコマンドないぜって返される。secure_pathで定義されてないPATHだからね。(もし使えるようにするならvisudoでsecure_pathに書き足すのが早そう)
sudo -i nodebrewなら大丈夫。

nodejsのStableをインストールする

とりあえずバージョン一覧を見てみよう。

とりあえず現時点での最新安定板は0.10.32らしい。

nodebrew installを使えばソースコードからmakeするけどそれは時間かかるし、バイナリで取ってこればよさそう。

ものの一瞬でインストールされる。すげぇ()

もちろんこのままnodeってうっても使えるわけないよ?useでセットしてやらんと…

お疲れ様でした。無事node先生がインストールされました。

npmも試す

ex1:npm install -g

グローバルモジュールはroot権以下のディレクトリに書き込むためroot権限がもちろん必須。groupつかってもいいのかもしれないけどややこしくなる原因なので今回は無し。

rootで作業するなら問題はない。sudoを使う場合は前述の通り-iオプションを使う。

ちなみにnpmやbower,grunt,gulp,いずれもcompletionを有効化しておくと捗る。

ex2:npm install

依存パッケージのインストール。アプリのw権があるユーザーなら普通通りインストール出来る。

まとめ

とりあえずこんな感じでnodebrewでnodeがインスコできたんで色々捗りそうです()

ついでに本番環境へのインストールも無事同様の手順で成功しました。

コメントを残す