CORESERVER(コアサーバー) V2にnvmを使ってNode.jsをインストールした

Node.js Logo

CORESERVER(コアサーバー)ネタばかり続きますが、V2プランのサーバにNode.jsをインストールして、Laravel等でJavascriptやcssを生成するためのnpmコマンドが使えるようにしたメモです。ついでにComposerもインストールします。

とはいっても以下の手順通りで特の問題もなくあっさりと終了です。

  • Node.js を管理するためにnvmをインストール
  • nvmを使ってNode.jsをインストール

nvmをインストール

Node.jsを管理するツールとしてnvm – Node Version Managerをインストールします。bashがあれば動作するということで選びました。他にもnodebrewなどがありますので、それでも良いとは思います。

$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
(略)
=> Downloading nvm from git to '/home/XXX/.nvm'
=> Cloning into '/home/XXX/.nvm'...
remote: Enumerating objects: 348, done.
remote: Counting objects: 100% (348/348), done.
remote: Compressing objects: 100% (297/297), done.
remote: Total 348 (delta 39), reused 161 (delta 26), pack-reused 0
Receiving objects: 100% (348/348), 208.92 KiB | 9.08 MiB/s, done.
Resolving deltas: 100% (39/39), done.
* (HEAD detached at FETCH_HEAD)
  master
=> Compressing and cleaning up git repository

=> Appending nvm source string to /home/XXX/.bashrc
=> Appending bash_completion source string to /home/XXX/.bashrc
=> Close and reopen your terminal to start using nvm or run the following to use it now:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion
$

見てのとおり、デフォルトで$HOME/.nvmにインストールされ、勝手に .bashrc に環境設定の追加と、オートコンプリート関係の設定に関する記述が追加されます。

追加しといたからターミナル閉じて再度開けと言っています。ちゃんとインストールされいますね。

$ nvm help

Node Version Manager (v0.38.0)

(以下略)

Node.jsをインストール

$ nvm install node
Downloading and installing node v16.10.0...
Downloading https://nodejs.org/dist/v16.10.0/node-v16.10.0-linux-x64.tar.gz...
############################################# 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v16.10.0 (npm v7.24.0)
Creating default alias: default -> node (-> v16.10.0)
$ nvm ls
->     v16.10.0
default -> node (-> v16.10.0)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v16.10.0) (default)
stable -> 16.10 (-> v16.10.0) (default)
lts/* -> lts/fermium (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.6 (-> N/A)
lts/fermium -> v14.18.0 (-> N/A)
$ node -v
v16.10.0
$ npm -v
7.24.0
$ which npm
~/.nvm/versions/node/v16.10.0/bin/npm
$ nvm install-latest-npm 
Attempting to upgrade to the latest working version of npm...
* Installing latest `npm`; if this does not work on your node version, please report a bug!

changed 19 packages, and audited 259 packages in 2s

11 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities
* npm upgraded to: v7.24.2
$ npm -v
7.24.2
$ 

特に切り替えて使つつもりもないのでバージョン指定せず、LTSの指定もなしで単純にインストールしました。あと、npmの最新化をnvmのコマンドで実行しています。内部的には以下のグローバルインストールと同じですが、前提のバージョンチェックとか色々してそうでした。

$ npm install -g npm 

ついでにComposerもインストール

Node.jsとは全く関係ありませんが、Laravelでは必須ですので、いっしょにインストールしてしまいます。これも特に困ることはありません。公式サイトのダウンロードページのコードをそのまま利用します。※コピへだと時期によってハッシュ値が異なると思いますので、公式を見に行ってください

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '906a84df04cea2aa72f40b5f787e49f22d4c2f19492ac310e8cba5b96ac8b64115ac402c8cd292b8a03482574915d1a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

カレントにcomposer.pharというファイルが作られるので、パスの通っているところに移動します。V2プランではデフォルトで、~/bin と ~/.local/bin にパスが通っていたのでなんとなく .local 側へ移動しました。

$ mkdir -p ~/.local/bin  ※なかったら作成して!!
$ mv composer.phar ~/.local/bin/composer

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください