コンテンツにスキップ

Node.js

Node.js は Node.js の Docker イメージである。

主要なタグ

node:<version>-bookwormを使っておけば良いと思う。

node:

  • 標準的なイメージ。よくわからないならこれを使っておけ的存在らしい。
  • 非常に一般的な Debian パッケージが多数含まれている。

node:XX-alpineはイメージとしてのサイズが小さいらしい。

node:-alpine

  • かなりイメージが小さいらしい。殆どのソフトウェアでは問題が出ないらしい。
  • gitbashなどは入っていないため、問題が起きた時に原因切り分けしにくい。

node:-bookworm

  • Debian 12 向け。Debian や Ubuntu 系ならこれ安定な気がする。

node:-slim

  • スペースに成約がある環境用で、そうでない場合はデフォルトのイメージ(node:<version>のこと?)の利用を強く推奨しているらしい。
  • bash は入っている。git は入っていない。

Dockerfile

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
# ベースのイメージを指定する
FROM node:22.13.1

# アプリケーションを動作させるディレクトリを指定する
# イメージに存在しないディレクトリの場合は、自動生成される
WORKDIR /usr/app

# アプリケーションをコピーする
# 1つ目の引数にコピー対象のファイルを指定する
# "."はプロジェクトのDockerfileの置かれているディレクトリからの相対位置を指しており、プロジェクトディレクトリ内すべてのファイルを指す
# 2つ目の引数にイメージへのコピー先を指定する
# "."はWORKDIRで指定したディレクトリを指す
COPY . .

# 依存関係をインストールする
RUN npm i

# アプリケーションを起動するためのコマンドを記載する
CMD ["npm", "run", "start"]

.dockerignore

1
2
3
4
5
.env
.git/
.gitignore
.vscode/
node_modules/