LoginSignup
0
0

More than 3 years have passed since last update.

Docker の Node.js イメージのバージョンについて

Last updated at Posted at 2020-12-26

初めに

Docker Hub に公開されている Docker 公式の Node.js イメージにはさまざまなバージョンがあります.
(Node.js コンテナイメージ URL : https://hub.docker.com/_/node)

その中にはバージョン名が,15.5.0-buster-slimのように15.5.0等の数字とbuster-slim等の文字列を組み合わせたものや,dubnium-stretch-slimのように文字列だけのものがあります.
数字部分はNode.jsのバージョンであることが予測できるのですが,文字列部分はどういった意味があるのかさっぱりわかりませんでした.

そこで今回は文字列部分にどういった意味があるのかをまとめました.

結論

文字列部分には,Node.js の LTS※ サポートのあるバージョンを表す単語と,Linux のディストリビューションを表す単語が含まれることがわかりました.

※ LTS = Long Time Support

Node.jsのLTSサポートのあるバージョンを表す単語

単語 意味
fermium Node.js 14.x.x の LTS のあるバージョン
erbium Node.js 12.x.x の LTS のあるバージョン
dubnium Node.js 10.x.x の LTS のあるバージョン

Linuxのディストリビューションを表す単語

単語 意味
alpine ファイルサイズを重視したディストリビューション,非常にサイズが小さい
buster Debian のバージョン 10
strech Debian のバージョン 9
slim 処理系なしの軽量版,自身で必要なパッケージを取得する必要がある

例えば,文字列部分がbuster-slimとなっているバージョンは,Debian のバージョン 10 の処理系なしの軽量版のディストリビューションを使ったイメージです.

また,コンテナのサイズはalpine < slim < その他となっています.
コンテナのサイズだけ考えると alpine が最も優秀なように思えますが,alpine はパッケージ管理ソフトが apt ではないことや,Python のイメージを使用する際は alpine を選択すると実行速度が大幅に遅くなる等の問題があるようです.
そのため,やりたいことに合わせてディストリビューションを使い分けるのが良いかと思います.

参考資料

Debianのバージョン一覧 (URL : https://wiki.debian.org/DebianReleases)

まとめ

Docker Hub に公開されているDocker公式のNode.jsイメージの文字列部分の調査をしました.

今回の調査で,例えば,dubnium-stretch-slimは,Node.jsのバージョンは10.x.xで,Debian9の軽量版であることがわかりました.

私自身Docker初心者でコンテナのサイズも気にしていないので,無難にbusterを使用しようと思います.

0
0
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
0
0