Skip to content

Docker ​

The published image is Debian 12 with the CPU build of postvec-server, the CLI, ONNX Runtime and the bundled MiniLM model. It serves MiniLM out of the box.

Pair it with the remote PostgreSQL image in quick start remote.

docker run -d --name postvec-server \
  -p 22222:22222 \
  -p 33333:33333 \
  -v postvec-models:/opt/postvec/models \
  ghcr.io/univec-ai/postvec-server:0.5.0-2

Wait until the container health is healthy; the image healthcheck calls GET /ready:

bash
docker inspect --format '{{.State.Health.Status}}' postvec-server

The container generates a self-signed certificate at start, per container. Mount a pair over /etc/postvec-server/server.crt and server.key, or pass --ssl-cert / --ssl-cert-key. A bind mount keeps the host's numeric owner, so a mounted key must be readable by the postvec-server account the image runs as (uid and gid 999); a Compose secret with uid: "999" and mode: 0400 is one way. The admin port is not exposed.

Optional

bash
docker exec postvec-server postvec-server status
curl -sk https://127.0.0.1:22222/ready

status prints the version and build features, readiness, the frontend address, the models and the cluster members. /ready is 200 once a model can serve. Image attestations: verify artifacts.

A checkout builds the same image from locally built packages with packaging/postvec/scripts/build-server-image.sh.

License

postvec-server is Business Source License 1.1 (source-available). Personal production use, non-production environments and a 30-day production evaluation per organization are free. Production use by an organization needs postvec pro. License.

Next: connect PostgreSQL. The dashboard is https://<host>:22222.