2026-10-23 22:24:56 +02:00
<svg xmlns= "http://www.w3.org/2000/svg" viewBox= "0 0 760 502" width= "760" role= "img" aria-labelledby= "t d" style= "max-width:100%;height:auto" >
<title id= "t" > Time to start a trivial command</title>
2026-10-25 08:05:02 +01:00
<desc id= "d" > Horizontal bars, milliseconds, lower is better. doos: 15 to 66 ms; Podman: 216 to 233 ms; Docker: 346 to 449 ms; bubblewrap: 8 to 9 ms. Exact values are in the table in COMPARISON.md.</desc>
2026-10-23 22:24:56 +02:00
<style>
.bg { fill: var(--surface); }
.t1 { fill: var(--ink); font: 600 15px system-ui, -apple-system, "Segoe UI", sans-serif; }
.t2 { fill: var(--ink2); font: 400 12px system-ui, -apple-system, "Segoe UI", sans-serif; }
.lab { fill: var(--ink); font: 400 13px system-ui, -apple-system, "Segoe UI", sans-serif; }
.val { fill: var(--ink2); font: 400 12px system-ui, -apple-system, "Segoe UI", sans-serif; }
.tick { fill: var(--muted); font: 400 11px system-ui, -apple-system, "Segoe UI", sans-serif; }
.grid { stroke: var(--grid); stroke-width: 1; }
.axis { stroke: var(--axis); stroke-width: 1; }
.acc { fill: var(--accent); }
.oth { fill: var(--other); }
:root { --surface:#fcfcfb; --ink:#0b0b0b; --ink2:#52514e; --muted:#898781;
--grid:#e1e0d9; --axis:#c3c2b7; --accent:#2a78d6; --other:#898781; }
@media (prefers-color-scheme: dark) {
:root { --surface:#1a1a19; --ink:#f0efec; --ink2:#c3c2b7; --muted:#898781;
--grid:#2c2c2a; --axis:#383835; --accent:#3987e5; --other:#898781; }
}
</style>
<rect class= "bg" x= "0" y= "0" width= "760" height= "502" rx= "8" />
<text class= "t1" x= "20" y= "28" > Time to start a trivial command (ms, lower is better)</text>
2026-10-25 08:05:02 +01:00
<text class= "t2" x= "20" y= "46" > 10 runs each, average, warm cache, 2026-10-25, kernel 7.0.0-38-generic, 12 cores. Docker is a rootful daemon.</text>
2026-10-23 22:24:56 +02:00
<rect class= "acc" x= "20" y= "55" width= "12" height= "12" rx= "2" />
<text class= "t2" x= "38" y= "65" > doos</text>
<rect class= "oth" x= "88" y= "55" width= "12" height= "12" rx= "2" />
<text class= "t2" x= "106" y= "65" > other tools</text>
<text class= "t1" x= "22" y= "78" > No network</text>
<line class= "grid" x1= "200.0" y1= "90" x2= "200.0" y2= "242" />
2026-10-25 08:05:02 +01:00
<line class= "grid" x1= "294.0" y1= "90" x2= "294.0" y2= "242" />
<line class= "grid" x1= "388.0" y1= "90" x2= "388.0" y2= "242" />
<line class= "grid" x1= "482.0" y1= "90" x2= "482.0" y2= "242" />
<line class= "grid" x1= "576.0" y1= "90" x2= "576.0" y2= "242" />
<line class= "grid" x1= "670.0" y1= "90" x2= "670.0" y2= "242" />
2026-10-23 22:24:56 +02:00
<text class= "lab" x= "190" y= "111.0" text-anchor= "end" > bubblewrap (host /usr)</text>
2026-10-25 08:05:02 +01:00
<path class= "oth" d= "M200.0,98.0 h4.6 a4,4 0 0 1 4,4 v10.0 a4,4 0 0 1 -4,4 h-4.6 z" ><title> bubblewrap (host /usr): 9.2 ms</title></path>
<text class= "val" x= "216.6" y= "111.0" > 9.2 ms</text>
2026-10-23 22:24:56 +02:00
<text class= "lab" x= "190" y= "141.0" text-anchor= "end" > doos Alpine image</text>
2026-10-25 08:05:02 +01:00
<path class= "acc" d= "M200.0,128.0 h9.8 a4,4 0 0 1 4,4 v10.0 a4,4 0 0 1 -4,4 h-9.8 z" ><title> doos Alpine image: 14.7 ms</title></path>
<text class= "val" x= "221.8" y= "141.0" > 14.7 ms</text>
2026-10-23 22:24:56 +02:00
<text class= "lab" x= "190" y= "171.0" text-anchor= "end" > doos host mode</text>
2026-10-25 08:05:02 +01:00
<path class= "acc" d= "M200.0,158.0 h11.2 a4,4 0 0 1 4,4 v10.0 a4,4 0 0 1 -4,4 h-11.2 z" ><title> doos host mode: 16.2 ms</title></path>
<text class= "val" x= "223.2" y= "171.0" > 16.2 ms</text>
2026-10-23 22:24:56 +02:00
<text class= "lab" x= "190" y= "201.0" text-anchor= "end" > Podman Alpine</text>
2026-10-25 08:05:02 +01:00
<path class= "oth" d= "M200.0,188.0 h199.0 a4,4 0 0 1 4,4 v10.0 a4,4 0 0 1 -4,4 h-199.0 z" ><title> Podman Alpine: 216 ms</title></path>
<text class= "val" x= "411.0" y= "201.0" > 216 ms</text>
2026-10-23 22:24:56 +02:00
<text class= "lab" x= "190" y= "231.0" text-anchor= "end" > Docker Alpine (rootful)</text>
2026-10-25 08:05:02 +01:00
<path class= "oth" d= "M200.0,218.0 h321.1 a4,4 0 0 1 4,4 v10.0 a4,4 0 0 1 -4,4 h-321.1 z" ><title> Docker Alpine (rootful): 346 ms</title></path>
<text class= "val" x= "533.1" y= "231.0" > 346 ms</text>
2026-10-23 22:24:56 +02:00
<line class= "axis" x1= "200" y1= "90" x2= "200" y2= "242" />
<text class= "tick" x= "200.0" y= "256" text-anchor= "middle" > 0</text>
2026-10-25 08:05:02 +01:00
<text class= "tick" x= "294.0" y= "256" text-anchor= "middle" > 100</text>
<text class= "tick" x= "388.0" y= "256" text-anchor= "middle" > 200</text>
<text class= "tick" x= "482.0" y= "256" text-anchor= "middle" > 300</text>
<text class= "tick" x= "576.0" y= "256" text-anchor= "middle" > 400</text>
<text class= "tick" x= "670.0" y= "256" text-anchor= "middle" > 500</text>
2026-10-23 22:24:56 +02:00
<text class= "t1" x= "22" y= "280" > Default network</text>
<line class= "grid" x1= "200.0" y1= "292" x2= "200.0" y2= "474" />
2026-10-25 08:05:02 +01:00
<line class= "grid" x1= "294.0" y1= "292" x2= "294.0" y2= "474" />
<line class= "grid" x1= "388.0" y1= "292" x2= "388.0" y2= "474" />
<line class= "grid" x1= "482.0" y1= "292" x2= "482.0" y2= "474" />
<line class= "grid" x1= "576.0" y1= "292" x2= "576.0" y2= "474" />
<line class= "grid" x1= "670.0" y1= "292" x2= "670.0" y2= "474" />
2026-10-23 22:24:56 +02:00
<text class= "lab" x= "190" y= "313.0" text-anchor= "end" > bubblewrap (host /usr)</text>
2026-10-25 08:05:02 +01:00
<path class= "oth" d= "M200.0,300.0 h3.5 a4,4 0 0 1 4,4 v10.0 a4,4 0 0 1 -4,4 h-3.5 z" ><title> bubblewrap (host /usr): 8 ms</title></path>
<text class= "val" x= "215.5" y= "313.0" > 8 ms</text>
2026-10-23 22:24:56 +02:00
<text class= "lab" x= "190" y= "343.0" text-anchor= "end" > doos Alpine image</text>
2026-10-25 08:05:02 +01:00
<path class= "acc" d= "M200.0,330.0 h48.8 a4,4 0 0 1 4,4 v10.0 a4,4 0 0 1 -4,4 h-48.8 z" ><title> doos Alpine image: 56.2 ms</title></path>
<text class= "val" x= "260.8" y= "343.0" > 56.2 ms</text>
2026-10-23 22:24:56 +02:00
<text class= "lab" x= "190" y= "373.0" text-anchor= "end" > doos host mode</text>
2026-10-25 08:05:02 +01:00
<path class= "acc" d= "M200.0,360.0 h52.4 a4,4 0 0 1 4,4 v10.0 a4,4 0 0 1 -4,4 h-52.4 z" ><title> doos host mode: 60 ms</title></path>
<text class= "val" x= "264.4" y= "373.0" > 60 ms</text>
2026-10-23 22:24:56 +02:00
<text class= "lab" x= "190" y= "403.0" text-anchor= "end" > doos Alpine, pasta</text>
2026-10-25 08:05:02 +01:00
<path class= "acc" d= "M200.0,390.0 h58.0 a4,4 0 0 1 4,4 v10.0 a4,4 0 0 1 -4,4 h-58.0 z" ><title> doos Alpine, pasta: 66 ms</title></path>
<text class= "val" x= "270.0" y= "403.0" > 66 ms</text>
2026-10-23 22:24:56 +02:00
<text class= "lab" x= "190" y= "433.0" text-anchor= "end" > Podman Alpine</text>
2026-10-25 08:05:02 +01:00
<path class= "oth" d= "M200.0,420.0 h214.9 a4,4 0 0 1 4,4 v10.0 a4,4 0 0 1 -4,4 h-214.9 z" ><title> Podman Alpine: 233 ms</title></path>
<text class= "val" x= "426.9" y= "433.0" > 233 ms</text>
2026-10-23 22:24:56 +02:00
<text class= "lab" x= "190" y= "463.0" text-anchor= "end" > Docker Alpine (rootful)</text>
2026-10-25 08:05:02 +01:00
<path class= "oth" d= "M200.0,450.0 h418.2 a4,4 0 0 1 4,4 v10.0 a4,4 0 0 1 -4,4 h-418.2 z" ><title> Docker Alpine (rootful): 449 ms</title></path>
<text class= "val" x= "630.2" y= "463.0" > 449 ms</text>
2026-10-23 22:24:56 +02:00
<line class= "axis" x1= "200" y1= "292" x2= "200" y2= "474" />
<text class= "tick" x= "200.0" y= "488" text-anchor= "middle" > 0</text>
2026-10-25 08:05:02 +01:00
<text class= "tick" x= "294.0" y= "488" text-anchor= "middle" > 100</text>
<text class= "tick" x= "388.0" y= "488" text-anchor= "middle" > 200</text>
<text class= "tick" x= "482.0" y= "488" text-anchor= "middle" > 300</text>
<text class= "tick" x= "576.0" y= "488" text-anchor= "middle" > 400</text>
<text class= "tick" x= "670.0" y= "488" text-anchor= "middle" > 500</text>
2026-10-23 22:24:56 +02:00
</svg>