LoginSignup
5
5

More than 5 years have passed since last update.

多分間違えてるColaboratoryの使い方(最新nodejsを利用する)

Posted at

はじめに

多分間違えてるColaboratoryの使い方シリーズ第3弾

今回はnodejsの最新版を利用してみたいと思います。

過去の記事

Colaboratoryでnodeを利用しようとすると、LTSの8系がインストールされています。

入力セル
!node --version
出力セル
v8.11.3

現在、10系が最新版で、次のLTS予定で機能的にもいろいろ追加されているのでどうせなら10系を使いたいなと思いました。

結論

以下を実行すれば特定バージョンのnodeを利用することができます。

設定

入力セル
!npm i -g n
!n v10.12.0
!node --version
出力セル
/tools/node/bin/n -> /tools/node/lib/node_modules/n/bin/n
+ n@2.1.12
added 1 package from 4 contributors in 0.799s

     install : node-v10.12.0
       mkdir : /usr/local/n/versions/node/10.12.0
       fetch : https://nodejs.org/dist/v10.12.0/node-v10.12.0-linux-x64.tar.gz
######################################################################## 100.0%
   installed : v10.12.0

v10.12.0

実行

ファイル作成

入力セル
%%writefile test.js
const fs = require('fs').promises;

(async () => {
  const texts = await fs.readFile('./test.js', 'utf8');

  console.log(texts);
})();
出力セル
Writing test.js

実行

入力セル
!node test.js
出力セル
(node:396) ExperimentalWarning: The fs.promises API is experimental
const fs = require('fs').promises;

(async () => {
  const texts = await fs.readFile('./test.js', 'utf8');

  console.log(texts);
})();

fs.promisesはまだexperimentalなのでワーニングがでます。
気になる人は--no-warnings を付けて実行しましょう。

経緯

開発時にnodeのバージョンを管理する場合は通常nvmを利用するかと思います。
なので、Colaboratoryでもnvmを利用しようとしたのですが、残念なことにnvmをインストールはできるのですが、~/.bashrcが読み込まれず設定ができませんでした。

かといって、公式サイトからダウンロードしてインストールするのもなかなか使いにくかったりするため、パッケージのnを利用することにたどり着きました。

まとめ

Colaboratoryなんでもできます!

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5