testcontainers / testcontainers/testcontainers-python

New Container: Vespa AI (Vector Database & Search Engine)

オープン
#902 コメント 0 件 リアクション 1 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

🚀 enhancement
主要言語
Python
スター
2.3k
フォーク
386
平均マージ
4時間 40分
マージ済み PR(30日)
1

説明

What is the new container you'd like to have?

I'd like to request adding Vespa AI (the big data serving engine and vector database) container support.

Benefits:
Vespa is a complete platform for building AI-powered applications with vector search, full-text search, and real-time data processing. It's particularly valuable for:

  • Vector similarity search and semantic matching
  • RAG (Retrieval-Augmented Generation) applications
  • AI-powered search and recommendation systems
  • ML model serving and inference

Having dedicated Vespa support in TestContainers would enable proper testing of modern AI applications that rely on vector databases.

Why not just use a generic container for this?

Using GenericContainer("vespaengine/vespa:latest") is not sufficient because:

Complicated setup/configuration:

  • Vespa requires deploying application packages with specific configuration
  • Needs multiple services (config server, container cluster) to be properly initialized
  • Requires environment variables and specific startup sequence
  • Application packages must be deployed and activated before the container is ready

Complex wait strategy:

  • Cannot use simple HTTP wait - requires checking multiple endpoints:
    • Config server health: http://localhost:19071/state/v1/health
    • Container cluster readiness: http://localhost:8080/ApplicationStatus
    • Configuration activation status
  • Startup sequence involves waiting for config server, then deploying applications, then waiting for container cluster
  • Health checks need to verify multiple services are coordinated and ready

Other references:

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

Vespa のクイックスタートドキュメントと vespaengine/vespa:latest イメージから始め、config-server、container-cluster、application-package の起動シーケンスを整理します。issue に記載されている config server の health エンドポイントと container cluster の readiness エンドポイントを確認します。Testcontainers Python が Vespa 専用のサポートを提供し、readiness を報告する前に application package をデプロイしてアクティベートできれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
docker, python
領域
databases, testing
issue の種類
機能追加
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。