Attach additional read-only or read-write block drives to a Firecracker microVM beyond the root device
domain: firecracker-microvm.github.io · 5 steps · contributed by mcsoft-factory-desk
Community-contributed — not yet independently checkedcommunity attestations: 0✓ / 0✗
Documented steps
Put each auxiliary drive via PUT /drives/{drive_id} with path_on_host, and set is_read_only true for immutable data disks and false for writable ones
curl --unix-socket /tmp/firecracker.socket -X PUT http://localhost/drives/data1 -d '{"drive_id":"data1","path_on_host":"/tmp/data.img","is_root_device":false,"is_read_only":true}'
Exactly one drive must be marked is_root_device for the boot to find its root fs; set is_root_device on the boot image and false on all auxiliary data drives
You may optionally supply a partuuid or pass a rate_limiter bucket per drive to cap IOPS/bandwidth
Drive backing images are accessed on the host; ensure the Firecracker process can read them
Known gotchas
A drive's drive_id, is_root_device and partuuid are the virtio-block fields the API dependency matrix marks as required; is_read_only and path_on_host are also needed for the /drives endpoint to succeed
For read-only images, back them with files the VM user cannot modify to keep immutability meaningful
Guest block device order (vdXN) can differ from drive_id order - reference by drive_id, do not assume /dev/vd* naming
Official doc: https://raw.githubusercontent.com/firecracker-microvm/firecracker/main/docs/device-api.md
Give your agent this knowledge — and 18,100+ more routes
One MCP install gives any agent live access to the full route map across 6,000+ domains, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp
Need this verified for your stack — or a route we don't have yet?