Tag Node.js

AWS Lambdaのコンテナイメージサポートを試してみる

本記事は東京学芸大学 櫨山研究室 Advent Calendar 2020の3日目の記事になります。 はじめに先日、AWS Re:InventにてAWS Lambdaのコンテナイメージサポートが発表されました。 どうやらDockerイメージをデプロイし、それをLambda関数として実行できるようです。 Lambdaで動作させるためのベースイメージはAWSから提供されています。 以下の言語でベースイメージが公開されているようでした。 Python Node.js Java .NET Go Ruby また、Lambda Runtime APIを満たす、コンテナイメージを作成することで独自のLambda実行環境を作成することも可能なようでした。 また、今回提供されるベースイメージにはLambda Runtime Interface Emulatorという機能が内包されており、ローカル環境でLambdaを実行できるようになったようです。

[Deno] ライブラリをimportする

Denoを触ってみた際のメモです。 Denoはnpmなどのパッケージマネージャーは存在しません。 ライブラリを利用するにはライブラリのコードが存在するURLを指定してimportします。 もちろんローカルにあるファイルを相対パスでimportすることも可能です。URL指定したimportの形式は以下のようになります。 例えば、標準のlogパッケージを利用するときは以下のように書きます。 依存しているモジュールはメインの関数を実行するときに、指定されたURLからローカルにダウンロードされます。 2回目の実行時はURLにはアクセスせず、ローカルのダウンロードを利用します。

[ESLint] eslint-plugin-importを利用して自動でimportをアルファベット順にソートする

以前までTypeScriptの開発ではTSLintを使っていましたが、TSLintの開発が縮小されていくということもあり、最近はESLintを利用しています。 TSLintにはimportがアルファベット順に並んでいないと警告を出してくれるorderd-importsというルールがあります。autofixもサポートされており、VSCodeのTSLint拡張を使うと保存時に自動でアルファベット順にソートしてくれていました。 ただ、ESLintに移行するとこれに代替する機能が標準ではありませんでした。

NODE_ENV=productionにしてyarn install(npm install)するとdevDependenciesがインストールされない

この仕様を忘れていて、幾度となく時間を浪費してきたので備忘録としてブログにしておきます。 NODE_ENV=productionにしてyarn install(npm install)するとdevDependenciesがインストールされません。 NDDE_ENVを利用してAPIのリクエスト先を変えたり、DBのアクセス先を変えたりすることは多いと思います。 例えば、NODE_ENV=testの時はtest環境のAPIにアクセスし、NODE_ENV=productionの時はproductionのAPIにアクセスするというような設定です。

nodenvでinstallできるNode.jsのversionのリストを更新する

先月Node.jsのversion 12系がLTSになりました。個人開発でも12系を利用しようとしてnodenvでインストールしようとしたところ、インストールできるNode.jsのversionのリストが古く、version 12.13.1がインストールできませんでした。