自身の理解のためにある程度調べたことをナレッジになればと思い記載
リポジトリ毎の関係性
Jupyter 公式の Read the Docs に記載がある。
派生関係としては以下の通り。
- base-notebook
- minimal-notebook
- scipy-notebook
- tensorflow-notebook
- datascience-notebook
- pyspark-notebook
- all-spark-notebook
- r-notebook
- scipy-notebook
- minimal-notebook
イメージ名からは分かりづらいが、minimal-notebook
の方がbase-notebook
よりもイメージサイズが大きい。
scipy-notebook、datascience-notebook の違い
よく使われる(であろう)やつ
-
scipy-notebook
- データ分析で使われるライブラリセット(pandas, scikit-learn など)を追加したもの
-
datascience-notebook
-
scipy-notebook
にさらに R や Julia を追加したもの
-
したがって、Python しか使わないならscipy-notebook
で十分(勘違いしていた)
イメージ Tag について
各リポジトリ内には多くのイメージ Tag が存在し、どれを利用すれば良いか一見分かりづらい。
イメージ Tag の規則はリポジトリ毎に細かい癖はありそうだが、例えばbase-notebook
は2020/7/29時点で以下のようになっている
- 黄色の強調部分(
b5abe43c6d31
)はコンテナイメージのSHAダイジェスト。同一ダイジェストに対して6つの Tag が存在している。- つまり、この6つは全て同一コンテナイメージを指すエイリアス。
- 最後のイメージ Tag (
b90cce83f37b
)もSHAダイジェスト。これは GitHub 側のコミットハッシュ。- このイメージ Tag に対応する Git コミットがこちら
これらから分かることは、base-notebook
のイメージ Tag は Python バージョンや Jupyter コンポーネント(Jupyter Notebook、JupyterLab、JupyterHub)毎にバージョンアップデートしたものが登録されている。
分かっていないこと
base-notebook
は様々なエイリアスが1つのコンテナイメージを指しており、過去の Python バージョンに対応したイメージ Tag を見つけることができる。
ここで、最も実利用する(であろう)scipy-notebook
のイメージ Tag はコミットハッシュばかりとなっており、目的の Python バージョンに対応するイメージ Tag が見つけづらい。
※逆にいうと、scipy-notebook
の各イメージ Tag に対してベースイメージとなっているbase-notebook
、minimal-notebook
のイメージ Tag をどのようにして見つけるのかが分からない。
いくつかのイメージを試してみたところ、Python のマイナーバージョン(3.6.6, 3.6.7, 3.8.0, ...)毎にイメージ Tag が作成されているっぽい?