testcontainers / testcontainers/testcontainers-python
New Container: Vespa AI (Vector Database & Search Engine)
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- Python
- Star
- 2.3k
- Fork
- 386
- Merge trung bình
- 4 giờ 40 phút
- Pull request đã merge (30 ngày)
- 1
Mô tả
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.
- Docker container:
vespaengine/vespa:latest - Vespa website: https://vespa.ai/
- Documentation: https://docs.vespa.ai/en/vespa-quick-start.html
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
- Config server health:
- 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:
- Vespa GitHub: https://github.com/vespa-engine/vespa
- Vespa Docker Hub: https://hub.docker.com/r/vespaengine/vespa/
- Vespa quick start guide: https://docs.vespa.ai/en/vespa-quick-start.html
- Vespa application packages: https://docs.vespa.ai/en/application-packages.html
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu với tài liệu quick-start của Vespa và image vespaengine/vespa:latest; lập sơ đồ trình tự khởi động của config-server, container-cluster và application-package. Kiểm tra các endpoint health của config server và readiness của container cluster được liệt kê trong issue. Công việc được xem là hoàn tất khi Testcontainers Python cung cấp hỗ trợ chuyên biệt cho Vespa, triển khai và kích hoạt một application package trước khi báo cáo readiness.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- docker, python
- Lĩnh vực
- databases, testing
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 35/100