Skip to content
QuenchWorks

vllm

Chart · Machine learning & AI · standard · v0.0.17

digest pinnedcosign signedSPDX SBOMSLSA provenanceamd64 · arm64Rebuilt 2026-10-22

vLLM, the high-throughput LLM inference and serving engine with an OpenAI-compatible API. CPU build — installs vLLM's prebuilt CPU wheel (torch+cpu, no source compile, no CUDA) into a venv on a hardened Wolfi python-3.12 base, 0-CVE across ~140 Python packages. The user supplies the model; the chart runs it as a StatefulSet with a persistent model cache.

Version

The latest line lives at the base page; older lines have their own page so you can pin and verify exactly that version. Only the most recent releases are listed — an older chart pins an older image digest.

Deployed image digest

sha256:2991b74f762a0e6d984cc51007caf62f9a8c7d107cf785a86e79e65093b415f0

Chart OCI version

oci://ghcr.io/quenchworks/charts/vllm:0.0.17

The chart pins its image by this signed digest, so you never track it yourself. Signatures, SBOM, and provenance attach to the same digest.

Signed
cosign keyless
SBOM
SPDX, on image
Provenance
SLSA build
Architectures
amd64, arm64
Runs as
nonroot (uid 1001)
Root filesystem
read-only
Image size
1.0 GB

Security report (Trivy)

D· 0/10019 fixable · rebuild clears them

Vulnerability detail

vllm 0.32.0 · 19 CVE
CVESeverityPackageInstalledFixed inTitle
CVE-2026-111943HIGHpy3-pip-wheel26.2.2-r026.2.2-r2crypto/x509: golang: crypto/x509: Man-in-the-middle attacks via untrusted intermediate certificates
CVE-2026-114613HIGHpy3-pip-wheel26.2.2-r026.2.2-r1msgpack: msgpack: Denial of Service via memory leak during map deserialization
CVE-2025-12781MEDIUMpython-3.123.12.15-r43.12.16-r2cpython: base64.b64decode() always accepts "+/" characters, despite setting altchars
CVE-2025-12781MEDIUMpython-3.12-base3.12.15-r43.12.16-r2cpython: base64.b64decode() always accepts "+/" characters, despite setting altchars
CVE-2025-15366MEDIUMpython-3.123.12.15-r43.12.16-r2cpython: IMAP command injection in user-controlled commands
CVE-2025-15366MEDIUMpython-3.12-base3.12.15-r43.12.16-r2cpython: IMAP command injection in user-controlled commands
CVE-2025-15367MEDIUMpython-3.123.12.15-r43.12.16-r2cpython: POP3 command injection in user-controlled commands
CVE-2025-15367MEDIUMpython-3.12-base3.12.15-r43.12.16-r2cpython: POP3 command injection in user-controlled commands
CVE-2026-12345MEDIUMpython-3.123.12.15-r43.12.16-r0python: python: Arbitrary file deletion via race condition during temporary directory cleanup
CVE-2026-12345MEDIUMpython-3.12-base3.12.15-r43.12.16-r0python: python: Arbitrary file deletion via race condition during temporary directory cleanup
CVE-2026-3446MEDIUMpython-3.123.12.15-r43.12.16-r2python: Python base64: Incomplete data decoding due to premature stop at padding
CVE-2026-3446MEDIUMpython-3.12-base3.12.15-r43.12.16-r2python: Python base64: Incomplete data decoding due to premature stop at padding
CVE-2026-6019MEDIUMpython-3.123.12.15-r43.12.16-r2python: Python: Cross-Site Scripting (XSS) vulnerability in http.cookies module
CVE-2026-6019MEDIUMpython-3.12-base3.12.15-r43.12.16-r2python: Python: Cross-Site Scripting (XSS) vulnerability in http.cookies module
GHSA-c8m5-c952-6cm4MEDIUMrustls0.23.450.23.46, 0.24.0-dev.2Rustls: Session Debug formatting exposes TLS master secrets and resumption PSKs
GHSA-h2v8-394m-p7vvLOWrustls0.23.450.23.46, 0.24.0-dev.2Rustls: Brotli certificate decompression can allocate an attacker-controlled amount of memory up to 1 GiB before authentication.
GHSA-vp88-798v-h67fLOWrustls0.23.450.23.46, 0.24.0-dev.2rustls: ECH rejection can expose buffered application data to authenticated outer server before `ech_required` alert
GHSA-w44r-93j7-qv28LOWrustls0.23.450.23.46, 0.24.0-dev.2rustls: An unauthenticated ServerHello poisons the per-name key-exchange record, so later ClientHellos carry only a classical X25519 share
GHSA-xmj3-9gf7-h52wLOWsetuptools83.0.084.1.0setuptools: Windows path escape via namespace_packages.txt during legacy wheel installation Description
0
Critical
2
High
13
Medium
4
Low
0
Unknown

Security report (Trivy) · image vllm 0.32.0

Install the chart

Deploy to Kubernetes with hardened defaults. The chart pins its image by signed digest, so you never track it yourself.

Install (latest)

helm install my-vllm oci://ghcr.io/quenchworks/charts/vllm --version 0.0.17

Deploys image (digest-pinned)

Chart version
0.0.17
App version
0.32.0
Chart license
Apache-2.0
App license
Apache-2.0
Service port
8000
Signed
cosign (keyless)
Values schema
yes
Last published
2026-11-01
Values keys
  • image: repository digest pullPolicy
  • nameOverride
  • model
  • extraArgs
  • resources: requests limits
  • persistence: enabled size accessModes annotations selector existingClaim
  • service: type port httpsPort
  • tls: enabled existingSecret certManager selfSigned
  • podLabels
  • podAnnotations
  • nodeSelector
  • affinity
  • tolerations
  • topologySpreadConstraints
  • priorityClassName
  • schedulerName
  • terminationGracePeriodSeconds
  • updateStrategy
  • extraEnvVars
  • extraEnvVarsCM
  • extraEnvVarsSecret
  • extraVolumes
  • extraVolumeMounts
  • initContainers
  • sidecars
  • lifecycleHooks
  • command
  • args
  • podSecurityContext
  • containerSecurityContext
  • livenessProbe
  • readinessProbe
  • startupProbe
  • customLivenessProbe
  • customReadinessProbe
  • customStartupProbe
  • serviceAccount: create name annotations
  • rbac: create
  • networkPolicy: enabled allowExternal
  • podDisruptionBudget: enabled minAvailable
  • ingress: enabled className annotations servicePort hosts tls

Verify the chart

cosign verify ghcr.io/quenchworks/charts/vllm:0.0.17 \
  --certificate-identity-regexp 'https://github.com/quenchworks/.+' \
  --certificate-oidc-issuer https://token.actions.githubusercontent.com

Transparency

The chart publishes its attestations on GitHub and the image it deploys carries its own on the same digest, publicly verifiable with the commands above. Both log to the Sigstore transparency log (Rekor), which cosign verify checks for you.

Upstream project: https://docs.vllm.ai