Skip to main content

Crate dockdash

Crate dockdash 

Source
Expand description

§Dockdash

Build and push OCI container images from Rust — no Docker daemon required.

Dockdash lets you programmatically create OCI-compliant container images, add layers from files or raw bytes, and push them to any OCI registry. It works anywhere Rust runs: CI pipelines, serverless functions, CLIs, or embedded tooling.

§Quick Start

use dockdash::{Arch, Image, Layer, PushOptions, Result};
use std::path::PathBuf;

let layer = Layer::builder()?
    .file("./my-binary", "./app", Some(0o755))?
    .build()
    .await?;

let (image, _) = Image::builder()
    .from("ubuntu:latest")
    .platform("linux", &Arch::ARM64)
    .layer(layer)
    .entrypoint(vec!["/app".to_string()])
    .build()
    .await?;

image.push("registry.example.com/my-app:latest", &PushOptions::default()).await?;

Structs§

BlobCache
Manages access to a content-addressable blob cache on disk.
BuildDiagnostics
Contains diagnostic information about the image build process.
Image
Represents a built OCI image stored as an OCI layout tarball. The temporary directory holding the tarball is cleaned up when this struct is dropped.
ImageBuilder
Builder for creating Image instances.
ImageMetadata
Runtime metadata extracted from an OCI image configuration.
Layer
Represents a single layer in an OCI image.
LayerBuilder
Builder for creating Layer instances.
PullAndExtractOptions
Options for pulling and extracting an image.
PushOptions
Options for pushing an image.
PushProgressInfo
Progress information for image push operations

Enums§

Arch
Name of the CPU target architecture.
ClientProtocol
The protocol that the client should use to connect
Error
Represents application-specific errors.
ManifestSource
Indicates the source from which an image manifest was obtained during a build.
MonolithicPushPolicy
Policy for determining whether to use monolithic push.
PullPolicy
Defines the policy for pulling an image manifest.
RegistryAuth
A method for authenticating to a registry

Traits§

PushProgressCallback
Trait for receiving progress updates during image push operations

Type Aliases§

Result