
Weaviate einfach selbst hosten
Yulei ChenWeaviate ist eine Open-Source Vektor-Datenbank, die sowohl Objekte als auch Vektoren speichert. Du kannst Vektor-Suche mit strukturiertem Filtern kombinieren - perfekt für AI-Anwendungen, semantische Suche und RAG-Pipelines. Weaviate Cloud bietet eine Managed-Option, aber die Kosten skalieren mit der Nutzung und du verlierst die Kontrolle über deine Daten.
Sliplane ist eine Managed Container Platform, die Self-Hosting schmerzfrei macht. Mit One-Click Deployment hast du Weaviate in Minuten am Laufen - kein Server-Setup, keine Reverse-Proxy-Config, keine Infrastruktur zum Verwalten.
Voraussetzungen
Bevor du loslegst, brauchst du einen Sliplane Account (kostenlose Testphase verfügbar).
Schnellstart
Sliplane bietet One-Click Deployment mit Presets.
- Klick auf den Deploy-Button oben
- Wähl ein Projekt aus
- Wähl einen Server aus. Wenn du dich gerade angemeldet hast, bekommst du einen 48-Stunden Trial-Server
- Klick auf Deploy!
Was ist im Preset?
Das One-Click Deploy oben nutzt Sliplane's Weaviate Preset. Das ist enthalten:
- Weaviate 1.37.2 aus der offiziellen
cr.weaviate.ioRegistry - Persistenter Storage gemountet auf
/var/lib/weaviate - API-Key Authentication standardmäßig aktiviert (ein zufälliger Key wird für dich generiert)
- Anonymer Zugriff aus Sicherheitsgründen deaktiviert
- Telemetrie deaktiviert
- Default Vectorizer auf
nonegesetzt, damit du deinen eigenen wählen kannst - OpenAI-Module aktiviert (
text2vec-openai,generative-openai,qna-openai) - Memory-Limit auf
1024 MiBund max CPU-Threads auf2für stabile Performance auf kleineren Servern
Nächste Schritte
Sobald Weaviate auf Sliplane läuft, erreichst du es über die Domain, die Sliplane dir zugewiesen hat (z.B. weaviate-xxxx.sliplane.app).
Mit deinem API-Key authentifizieren
Das Preset generiert einen zufälligen API-Key für dich. Du findest ihn in der AUTHENTICATION_APIKEY_ALLOWED_KEYS Umgebungsvariable in deinen Service-Settings. Nutz diesen Key im Authorization-Header bei Requests:
curl https://weaviate-xxxx.sliplane.app/v1/meta \
-H "Authorization: Bearer YOUR_API_KEY"
Oder mit dem Weaviate Python Client:
import weaviate
client = weaviate.connect_to_custom(
http_host="weaviate-xxxx.sliplane.app",
http_port=443,
http_secure=True,
grpc_host="weaviate-xxxx.sliplane.app",
grpc_port=443,
grpc_secure=True,
auth_credentials=weaviate.auth.AuthApiKey("YOUR_API_KEY"),
)
Umgebungsvariablen, die du anpassen kannst
| Variable | Default | Beschreibung |
|---|---|---|
ENABLE_MODULES | text2vec-openai,generative-openai,qna-openai | Komma-getrennte Liste der Module |
DEFAULT_VECTORIZER_MODULE | none | Default-Vectorizer für neue Collections |
QUERY_DEFAULTS_LIMIT | 1000 | Standard-Limit für Query-Ergebnisse |
LOG_LEVEL | info | Log-Detail (debug, info, warning, error) |
GOMEMLIMIT | 1024MiB | Go Runtime Memory-Limit |
GOMAXPROCS | 2 | Max CPU-Threads für die Go Runtime |
Wenn du einen anderen Vectorizer nutzen willst (z.B. Cohere oder Hugging Face), pass ENABLE_MODULES entsprechend an. In der Weaviate Modules Dokumentation findest du die vollständige Liste.
Logging
Weaviate loggt standardmäßig auf STDOUT, was perfekt mit Sliplane's eingebautem Log-Viewer funktioniert. Wenn du mehr Details zum Debuggen brauchst, setz LOG_LEVEL auf debug. Allgemeine Docker-Log-Tipps findest du in unserem Post how to use Docker logs.
Troubleshooting
Falls Weaviate langsam startet oder der Speicher knapp wird, versuch GOMEMLIMIT und GOMAXPROCS an die Ressourcen deines Servers anzupassen. Auf einem 2 GB Server sind 1024MiB und 2 gute Defaults.
Du kannst prüfen, ob Weaviate gesund ist, indem du den Readiness-Endpoint aufrufst:
curl https://weaviate-xxxx.sliplane.app/v1/.well-known/ready
Kostenvergleich
Natürlich kannst du Weaviate auch bei anderen Cloud-Anbietern self-hosten. Hier ein Preisvergleich der gängigsten:
| Anbieter | vCPU | RAM | Disk | Monatliche Kosten | Hinweis |
|---|---|---|---|---|---|
| Sliplane | 2 | 2 GB | 40 GB | €9 (~$10.65) | Flatrate, 1 TB Bandwidth, SSL inklusive |
| Fly.io | 2 | 2 GB | 40 GB | ~$18 | Disk und Bandwidth extra |
| Render | 1 | 2 GB | 40 GB | ~$35 | 100 GB Bandwidth, Disk extra |
| Railway | 2 | 2 GB | 40 GB | ~$67 + $20 Plan | Pro-Plan-Minimum, nutzungsbasiert, Bandwidth extra |
Klick hier, um die Berechnung zu sehen.
(Angenommen eine always-on Instanz mit 730 Stunden/Monat)
- Sliplane: Flat €9/Monat für den Base Server. Unbegrenzte Services auf demselben Server, 1 TB Egress und SSL inklusive.
- Fly.io:
shared-cpu-2x2 GB = $11.83/Monat + 40 GB Volume × $0.15/GB = $6 -> ~$17.83/Monat. Egress wird separat berechnet ($0.02/GB in der EU). - Render: Nächstliegendes Angebot ist Standard ($25, 1 vCPU / 2 GB) plus 40 GB Disk × $0.25/GB = $10 -> ~$35/Monat. Pro (2 vCPU / 4 GB) kostet $85/Monat + Disk.
- Railway (Pro Plan): CPU 2 × $0.00000772/s × 2,628,000 s = $40.57; RAM 2 × $0.00000386/s × 2,628,000 s = $20.29; Volume 40 × $0.00000006/s × 2,628,000 s = $6.31 -> ~$67/Monat Compute, plus $20/Monat Pro-Plan-Minimum und $0.05/GB Egress.
Bandwidth-Kosten können bei nutzungsbasierten Anbietern schnell steigen. Nutz unser Bandwidth-Kostenvergleichstool , um zu sehen, was dein Egress bei jedem Anbieter kosten würde.
FAQ
Wofür kann ich Weaviate nutzen?
Weaviate eignet sich ideal für AI-basierte Suche, Empfehlungs-Engines, RAG-Pipelines (Retrieval-Augmented Generation) und jede Anwendung, die semantische Ähnlichkeitssuche braucht. Du speicherst Objekte mit ihren Vektor-Embeddings und fragst sie per natürlicher Sprache oder Vektor-Ähnlichkeit ab. Es unterstützt auch hybride Suche, die Vektoren mit klassischem Keyword-Filtering (BM25) kombiniert.
Wie konfiguriere ich Vectorizer-Module?
Setz die Umgebungsvariable ENABLE_MODULES auf eine komma-getrennte Liste der gewünschten Module. Um z.B. Cohere statt OpenAI zu nutzen, setz sie auf text2vec-cohere,generative-cohere. Dann setz DEFAULT_VECTORIZER_MODULE auf deinen bevorzugten Default. Du musst auch den entsprechenden API-Key (z.B. COHERE_APIKEY) als Umgebungsvariable angeben.
Wie update ich Weaviate?
Änder den Image-Tag in deinen Service-Settings von cr.weaviate.io/semitechnologies/weaviate:1.37.2 auf die neue Version und deploye neu. Auf der Weaviate GitHub Releases Seite findest du die neueste stabile Version. Weaviate führt Daten-Migrationen beim Start automatisch durch.
Gibt es Alternativen zu Weaviate?
Ja. Qdrant ist eine weitere beliebte Open-Source Vektor-Datenbank, die du auf Sliplane self-hosten kannst. Weitere Optionen sind Milvus, Chroma und Pinecone (nur Cloud). Jede hat unterschiedliche Trade-offs bei Performance, API-Design und Feature-Set.
Kann ich Weaviate ohne externen Embedding-Anbieter nutzen?
Ja. Setz DEFAULT_VECTORIZER_MODULE auf none und liefere deine eigenen Vektoren beim Daten-Import. So kannst du jedes Embedding-Modell nutzen, das du willst (auch lokale, die z.B. auf Ollama laufen) und die resultierenden Vektoren einfach in Weaviate speichern.