Skip to content
Last updated

カスタムスクリプトDockerイメージのバージョニング

Dockerイメージのバージョニングスキーム

Treasure DataがCustom Scripts用に提供するDockerイメージには、「3.9.1-td2」のようなバージョンがあります。このバージョンは以下の形式でフォーマットされています:

PYTHON_VERSION-SECURITY_FIX

「3.9.1」はPYTHON_VERSIONです。イメージに含まれるPythonのバージョンです。

「-td2」はSECURITY_FIXです。Treasure Dataがセキュリティホットフィックスをリリースするたびにインクリメントされる連番です。この番号は「td0」から始まります。

したがって、Dockerイメージのバージョンが「3.9.1-td2」の場合、含まれているPythonバージョンは3.9.1であり、これは3.9.1シリーズの2番目のセキュリティフィックスリリースであることを意味します。

このスキームでは、Custom Scriptタスクで使用されるDockerイメージは、ユーザーの操作なしにアップグレードされることはありません。新しいDockerイメージがリリースされた場合、新しいバージョンでCustom Scriptタスクをテストし、アップグレードする必要があります。

Dockerイメージのリリース計画

Treasure Dataは、以下の場合にCustom Scripts用の新しいDockerイメージをリリースします:

  • Pythonの新しいバージョンがリリースされた場合。

  • セキュリティフィックスが必要な場合。

詳細は以下の通りです。

新しいPythonバージョン用のリリース(「通常」リリース)

Treasure Dataは、Pythonの新しいバージョンがリリースされた際に、Custom Scripts用の新しいDockerイメージを提供します。例えば、Python 3.77.0がリリースされた場合、Dockerイメージ「3.77.0-td0」をリリースします。

リリース時期はベストエフォートであることに注意してください。Pythonの新しいバージョンのリリースとCustom Scripts用Dockerイメージのリリースの間隔は保証されません。さらに、Custom Script用のDockerイメージは、すべてのPythonバージョンに対してリリースされるわけではありません。

セキュリティフィックス用のリリース

Treasure Dataは、リリース済みのDockerイメージに含まれるコンポーネントに修正が必要な重大なセキュリティ脆弱性を特定し、上流からセキュリティフィックスがすでに提供されており、修正が必要であると判断した場合、Custom Scripts用の新しいDockerイメージを提供します。例えば、「3.77.2-td0」イメージに含まれるライブラリの重大なセキュリティ脆弱性に対するセキュリティフィックスが提供され、修正が必要であると判断した場合、セキュリティフィックスを含む新しいDockerイメージ「3.77.2-td1」をリリースします。

Treasure Dataは、最新の2つのPythonマイナーバージョンを持つDockerイメージバージョンに対してセキュリティフィックスリリースを提供します。例えば、現時点での最新Dockerイメージの最新Pythonマイナーバージョンは3.10と3.9であるため、3.10と3.9シリーズのイメージに対してセキュリティフィックスを提供します。

新規リリースにおける後方互換性

通常リリース(非セキュリティフィックスリリース)に関しては、後方互換性は保証されません。例えば、Dockerイメージ3.12.2-td0は3.12.1-td0と後方互換性がない可能性があります。対象イメージでCustom Scriptタスクをテストする必要があります。

セキュリティフィックスリリースに関しては、Treasure Dataは可能な限り後方互換性を維持するよう努めます。ただし、上流の変更や依存ライブラリによっては、どのリリースでも100%の後方互換性は保証されません。例えば、Dockerイメージ3.12.1-td1は3.12.1-td0とほぼ後方互換性があると予想されますが、保証はされません。

Dockerイメージの廃止

特定のDockerイメージのバージョンよりも新しい2つのPythonマイナーバージョンがリリースされた場合、そのイメージは廃止となり、セキュリティフィックスは提供されなくなります。その後もしばらくはこのバージョンを使用できますが、一定期間後に通知を経て削除されます。

例えば、Dockerイメージ「3.10.9-td0」は、「3.12.0-td0」と「3.11.0-td0」がリリースされた後に廃止となります。

旧バージョンスキームは廃止

Treasure Dataは以前、上記とは異なるバージョニングスキームでDockerイメージを提供していました。これらのイメージには「3.9」や「3.9.1」のようなDockerイメージバージョンがありました。これらのバージョンはしばらくの間は動作し続けますが、これらのバージョンは廃止されており、現在作成中のワークフローでの使用は推奨されません。これらのバージョンも、上記の廃止ポリシーに従って削除されます。