[JavaScript] DockerでJavaScriptコマンドライン環境導入

2021年3月8日月曜日

Docker JavaScript

JavaScriptの実行環境としては、ブラウザ上で行うのがお手軽だけど、プログラミング言語としてのJavaScriptを試したい時は、Node.jsでコマンドライン実行できる環境があると便利。

Node.js on Alpine on Doocker

とはいえ、ローカル環境に入れたくない時もあるだろうから、Dockerのコンテナとして入れてしまおう。
軽量のAlpineを使う。
homeをホスト側に置いて、JavaScriptのファイルはそこに置くことにしよう。

Dockerfile
FROM alpine:latest
RUN apk add --update --no-cache nodejs
docker-compose.yml
version: "3"
services:
  node-app:
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - ./home:/home
    tty: true

起動

homeディレクトリを作って起動しよう。
$ mkdir home
$ docker-compose up -d

ログイン

起動できたので、ログインするけどその前にhomeに確認用プログラムを置いておく。
$ cat home/sketch.js
console.log('Hello, node on docker!');
そして、起動。
$ docker-compose exec node-app ash
/ # cd home/
/home # ls
sketch.js
/home # node sketch.js 
Hello, node on docker!
/home # 

停止

使い終わったら停止しておこう。
$ docker-compose stop