本記事では次の内容に絞っています。
- Node.jsの超初心者がnvmやnpmに触れてみました。
- 実際に動かすことでイメージを沸かせることが出来るはずです。
今まで全然触れてこなかったからね。
ぐぐったら、npmがNode.jsのパッケージ管理ソフトってのは、なんとなくわかりました。
→ だから便利なパッケージ(ライブラリとも呼ぶのかな)をパッケージ間の依存関係とか気にせずに導入するためには必須になる。
実際に使ってみるところまで試して身をもって体験してみます・・・。
全体の流れ
次の流れで進めていきます。
- node.jsを導入(インストール)
- node.jsでプロジェクト作成して動作確認
- パッケージを導入して動作確認
環境準備
とりあえず試すために適当なEC2(ここではamazon linux2)にnode.jsを導入しよう。
チュートリアル: Amazon EC2 インスタンスでの Node.js のセットアップ - AWS SDK for JavaScript
SDK for JavaScript で Node.js を使用するには、通常、Amazon Elastic Compute Cloud (Amazon EC2) インスタンス上で Node.js ウェブアプリケーションをセットアップして実...
# nvmを導入
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc
# nvmを使ってnode.jsの最新安定版(LTS)を導入
nvm install --lts
# 動作確認
node -e "console.log('Running Node.js ' + process.version)"
→ node: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by node)
→ この環境では何かしないと最新lts(このときはv20.12.2)が使えないようだ。
この環境では何かしないと最新LTS(このときはv20.12.2)が使えないようです。
出鼻をくじくとはこのこと。
頑張れば、使えるようになるっぽいですが、めんどうなのでバージョンを下げて使えるようにします。
# まずは利用可能なバージョンを確認
nvm ls-remote
→ 色々なバージョンが表示されます。
→ 今回は「v16.20.2」にしておきます。
# バージョン指定でnode.jsを導入
nvm install v16.20.2
# 明示的に「v16.20.2」を使うように設定
nvm use v16.20.2
# 動作確認
node -e "console.log('Running Node.js ' + process.version)"
→ Running Node.js v16.20.2 と表示され、今度はうまくいった。
プロジェクト作成とパッケージ導入
Node.jsプロジェクトを作成
nvmによってnode.jsを実行できるようになったので、自分のプロジェクトを作ってhello worldしてみます。
# 適当に作成したフォルダ(プロジェクト拠点)に移動
mkdir test1 && cd $_
# プロジェクト初期化
npm init -y
→ package.jsonが作られた。
# プロジェクト内でhello world
index.jsを作成して「console.log("helloooooo!");」を記載する。
# 実行する
node index.js
→ helloooooo!
パッケージを導入(install)
適当なパッケージも導入してコールしてみます。
※ここでは配列操作が得意なパッケージである「lodash」を導入してみます。
# lodashと呼ばれるパッケージを導入します。
npm install lodash
→ うまくいって、package-lock.jsonが作られた。
→ さらにnode_modulesフォルダが作られ、パッケージのコードなどがインストールされた。
index.jsに次の内容を記載します。
const _ = require('lodash');
// 配列の要素をシャッフルする例
const shuffledArray = _.shuffle([1, 2, 3, 4, 5]);
console.log(shuffledArray);
// 配列の要素を合計する例
const sum = _.sum([1, 2, 3, 4, 5]);
console.log(sum);
→ [3, 1, 4, 5, 2]
→ 15
無事に意図した内容が出力されました!
npm install によって導入したパッケージがうまく動作しているようです。
おしまい
簡単な操作をしながら、node.jsのnvmやnpmに少しだけ触れてみました。
- nvm
→ node.jsのバージョンを管理するためのソフトウェアで、簡単にバージョンの切り替えが出来る。 - npm
→ node.jsのパッケージを管理するためのソフトウェア - package.jsonやpackage-lock.json
→ npm initやinstallによって作られるプロジェクトやパッケージのための管理ファイル。
Node.jsで何かを開発という動きには程遠いですが、パッケージを支えるためのnpm等については、なんとなく理解出来ました。
※この知識をもって、GitHub Packagesの機能に触れる!という流れへ繋げていきます(別記事)。
最後までご覧いただき、ありがとうございました!
コメント