Predefined image helpers
from_bun_image() requires an explicit Bun version and maps to
oven/bun:<version>.
Existing templates and custom images
Dockerfile
build_backend="native" remains valid for non-Dockerfile declarative/OCI
requests and historical build filters, but Dockerfile input with the native
backend is rejected.
Compatibility
BuildKit-backed Dockerfile builds use BuildKit for upstream Dockerfile evaluation and then retain the resulting OCI runtime metadata during import.| Feature | BuildKit behavior |
|---|---|
Multi-stage builds and COPY --from | Handled by BuildKit. |
| Heredocs | Supported when the configured BuildKit Dockerfile frontend supports them. |
RUN --mount | BuildKit cache, bind, tmpfs, secret, and SSH mounts require matching Nullspace request support and policy. |
| Named contexts | Require BuildKit build-context support. |
.dockerignore parity | Uses the uploaded BuildKit context path. |
LABEL | Retained as template/build OCI metadata. |
EXPOSE | Retained as metadata and UI/API hints; it does not automatically publish a port. |
VOLUME | Retained as metadata only; it does not create persistent Nullspace volumes. |
HEALTHCHECK | Retained as metadata. Shell/exec healthchecks map to command readiness when safe; unsupported forms remain metadata only. |
OCI import
When a custom image or external DockerfileFROM imports an OCI image,
Nullspace imports these runtime defaults:
| OCI data | Import behavior |
|---|---|
Env | KEY=VALUE entries become runtime env defaults; malformed entries are skipped. |
User | Trimmed non-empty values become the default user. Supported Linux forms include names, numeric ids, and user/group combinations. |
WorkingDir | Trimmed non-empty values become the default workdir. |
Entrypoint and Cmd | Arrays are concatenated and shell-escaped into one start command. |
| Labels | Retained as template/build OCI metadata. |
| Exposed ports | Retained as metadata and hints; they do not publish traffic by themselves. |
| Volumes | Retained as metadata only; no persistent Nullspace volume is created automatically. |
| Healthcheck | Retained as metadata and mapped to command readiness when semantics are safe. |
| Layers | Raw tar, gzip, Docker tar/gzip, nondistributable variants, and zstd OCI layers are supported. |
| Filesystem entries | Regular files, directories, symlinks, hard links, and OCI whiteouts are applied when paths stay inside the rootfs. Mode bits and uid/gid ownership are preserved in the generated ext4 rootfs. |
| Platform | Linux manifests are selected for the microVM host architecture. Manifests with os.version or os.features are rejected. |