mise oci build
- Usage:
mise oci build [FLAGS] - Source code:
src/cli/oci/build.rs
[experimental] Build an OCI image from the current mise.toml
Each tool version becomes its own content-addressable OCI layer. Bumping a tool version only invalidates that tool's layer — other tools, the base image, and config are reused unchanged. The output directory conforms to the OCI image-layout spec and can be consumed by skopeo, crane, or podman load.
Requires mise settings experimental=true (or MISE_EXPERIMENTAL=1).
Flags
-o --output <OUTPUT>
Output directory for the OCI image layout
Default: ./mise-oci
--from <FROM>
Base image reference (overrides [oci].from and the oci.default_from setting)
-t --tag <TAG>
Tag to record in the image index (the org.opencontainers.image.ref.name annotation)
--mount-point <MOUNT_POINT>
Where to place tool installs inside the image (default: /mise)
--no-mise
Do not embed the currently-running mise binary at /usr/local/bin/mise
Examples:
Build with defaults (debian:bookworm-slim base):
$ mise oci build
Build with a specific base image and tag:
$ mise oci build --from ubuntu:24.04 --tag myorg/dev:latest -o ./img
Inspect the result with skopeo:
$ skopeo inspect oci:./mise-oci
Push to a registry:
$ skopeo copy oci:./mise-oci docker://ghcr.io/me/dev:latestNotes:
- asdf and vfox plugins are not supported in v1; use a different backend
(core, aqua, ubi, github, cargo, npm, go, pipx, spm, http) for each tool.
- The host mise binary is embedded at /usr/local/bin/mise by default;
build on the same OS/arch as your target image (or pass --no-mise).