Skip to content

feat(drivers): support docker and podman config mounts#1785

Draft
drew wants to merge 3 commits into
mainfrom
docker-podman-volumes
Draft

feat(drivers): support docker and podman config mounts#1785
drew wants to merge 3 commits into
mainfrom
docker-podman-volumes

Conversation

@drew
Copy link
Copy Markdown
Collaborator

@drew drew commented Jun 5, 2026

Summary

Adds driver-config mount support for local Docker and Podman sandboxes. Docker accepts existing named volumes and tmpfs mounts; Podman accepts existing named volumes, tmpfs mounts, and image mounts. Host bind mounts remain out of the driver-config schema, and NFS is supported through pre-created runtime-managed named volumes.

Related Issue

N/A. Follow-up to #1744.

Changes

  • Parse and validate per-sandbox mount config for Docker and Podman from --driver-config-json.
  • Validate Docker and Podman named volumes exist before sandbox creation.
  • Add Podman image mount support and image pull handling; keep Docker image mounts unsupported.
  • Document per-driver mount behavior in reference and sandbox management docs.

Testing

  • mise run pre-commit passes
  • Unit tests added/updated
  • E2E tests added/updated (if applicable)

Checklist

  • Follows Conventional Commits
  • Commits are signed off (DCO)
  • Architecture docs updated (if applicable)

Signed-off-by: Drew Newberry <anewberry@nvidia.com>
@drew drew requested review from a team, derekwaynecarr, maxamillion and mrunalp as code owners June 5, 2026 20:56
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 5, 2026

drew added 2 commits June 5, 2026 14:04
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
@drew drew marked this pull request as draft June 5, 2026 21:48
@copy-pr-bot
Copy link
Copy Markdown

copy-pr-bot Bot commented Jun 5, 2026

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

#[derive(Debug, Clone, serde::Deserialize)]
#[serde(tag = "type", rename_all = "snake_case", deny_unknown_fields)]
enum DockerDriverMountConfig {
Volume {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My first quick thought here: This means that users will have to create a local named volume to mount host paths that they're interested in. Is this the intent? If so, we may want to: 1) Add documentation or an example to cover this, and 2) ensure that the checks we have in place also align with this expectation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants