I set up my first Docker SBX kit, and here's how I did it
A practical guide to building a real MLflow mixin kit from scratch, errors included. Hey! Let me tell you something. When I first heard about Docker Sandbox Kits , my first reaction was: "Okay, another YAML thing. How hard can it be?" Spoiler: it was harder than expected. But also way more interesting. I'm Yhary, a Docker Captain and AI Engineer from Colombia. I recently built my first SBX kit as…
Docker Sandbox Kits (SBX Kits) are a solution to configuration drift when setting up AI experiments. They're declarative YAML files that configure sandbox environments automatically at creation time. SBX Kits install tools, inject environment variables, manage secrets, control network access, and run startup scripts. There are two types of kits: agent kits, which define a new agent from scratch, and mixin kits, which extend an existing agent by layering new capabilities on top.
To create a mixin kit, start by planning the architecture and setting up the folder structure. The heart of the kit is the spec.yaml file, which includes details like the kind (mixin), name, display name, description, environment variables, network rules, and commands. The Dockerfile sets up the base image with heavy dependencies, installs necessary packages, and sets up the user and environment variables.
CLAUDE.md is a file that provides instructions for the Claude Code agent, specifying its capabilities and common tasks. Finally, spec.yaml is the final kit manifest that includes all the information from the previous steps.
The author built an MLflow mixin kit that starts an MLflow tracking server when the sandbox is created, allowing Claude Code to log experiments, track metrics, and version models right out of the box. The kit consists of a Dockefile, CLAUDE.md, spec.yaml, and other necessary files. The Dockerfile installs heavy dependencies in the image, uses a separate Python virtual environment for MLflow, and patches Python 3.14 compatibility.
The CLAUDE.md file tells Claude Code about its capabilities and how to use MLflow within the sandbox. The spec.yaml file defines the kit's configuration, including environment variables, network rules, and startup commands.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.