は、Java アプリケーションのためのスペース効率的で最適化された Docker と OCI イメージを構築するためのオープンソースツールだ。開発者や CI/CD の経験をさらに向上させるために、常に新しい新機能を追加している。目玉機能としては、Jib プラグイン拡張フレームワーク、人気のあるアプリケーションフレームワークのネイティブサポート、CI/CD パフォーマンスの向上、Skaffold を使用したローカル Kubernetes 上での開発体験の強化などが挙げられる。

Jib プラグイン拡張フレームワーク

Jib の真の力は、Java アプリケーション用に最適化された Docker と OCI イメージを、再現性のある宣言的な方法で、コンテナのベストプラクティスを適用しながら、Docker デーモンなしで構築する能力にある。新しい Jib プラグイン拡張フレームワークで、ユーザーは Jib を拡張して Java アプリケーションイメージのあらゆる側面を微調整できるようになった。拡張フレームワークは Container Build Plan Specification に基づいている。これは、イメージのビルド計画を記述するための汎用的でツールに依存しない仕様だ。コアJib チームはすでにいくつかの便利な拡張機能をリリースしている。それはコンテナ内で動作する Java アプリケーションを高速に起動するための GraalVM ネイティブイメージ拡張のようなものだ。新しい拡張機能は、Maven と Gradle の両方のためのサードパーティプラグインとして構築され、貢献できる。

アプリケーションフレームワークのネイティブサポート

Spring Boot や Quarkus のような人気のあるアプリケーションフレームワークのいくつかは、Jib からネイティブサポートを受けられるようになった。Spring Boot の場合、Jib のパッケージ化されたコンテナ化モードは、コンテナ化に不向きな傾向のある Fat Spring Boot JAR ではなく、オリジナルの Thin アプリケーション JAR をコンテナ化することで革新的なサポートを提供する。Jib コアチームは、Quarkus 用のファーストパーティの Jib MavenGradle 拡張も公開した。これにより、Quarkus イメージの設定と構築方法を完全に制御できるようになる。これらの拡張機能はまだ実験的なものであり、複雑なプロジェクトの構築に失敗する可能性があることに注意が必要だ。

#java #continuous integration #devops #デベロップメント #ニュース

Jib で Java アプリケーションをコンテナ化
2.20 GEEK