Minor Changes
- 9fb2976: Add
servicesas the canonical multi-service project configuration and keepexperimentalServicesV2as a deprecated backwards-compatible alias.
Patch Changes
-
186014d: Add an experimental container service runtime. A service with
runtime: "container"either builds itsDockerfile/Containerfileand pushes
the resulting OCI image to the Vercel Container Registry (VCR), or passes a
prebuilt image reference through as build output.@vercel/container(new builder): authenticates to VCR with the project's
VERCEL_OIDC_TOKEN, ensures the repository exists, builds and pushes the
image, and emits a digest-pinned reference inhandler(container functions
aretype: "Lambda"withruntime: "container"; the platform surfaces
handleras the image downstream). Usesdockeron developer machines and
buildah(daemonless) in the Vercel build container behind a shared
ContainerEngineinterface. Supportsvc devviastartDevServer(local
build/run, env parity, log forwarding) andprepareCachefor buildah layer
reuse between builds. Build flow is instrumented with tracing spans
(non-secret diagnostics) and debug logging gated onBUILDER_DEBUG.@vercel/build-utils: add theContainerImagebuild-output type.@vercel/fs-detectors: resolve container services fromvercel.json
(theservicesconfig and its deprecatedexperimentalServices/
experimentalServicesV2aliases). ADockerfile,Containerfile, or
*.dockerfileentrypoint triggers a build; any other entrypoint is treated as
a prebuilt OCI image reference.vercel: wire container output intovercel buildresult writing and
config validation.
Buildah specifics in the build container: host networking for
RUNsteps,
nativeoverlaystorage on the XFS/vercelvolume (deferring to the image's
storage.conf), zstd push compression, and registry credentials read from the
provisioned auth file when present. Several knobs are available for debugging:
VERCEL_CONTAINER_ENGINE,VERCEL_VCR_STRICT_STORAGE,
VERCEL_VCR_DISABLE_LAYER_CACHE, andVERCEL_VCR_FORCE_LOGIN. -
cb0988f: Set the Node.js 20 discontinuation date to October 1, 2026.