Kurtosis import-compose

Import Docker Compose files into Kurtosis. Convert docker-compose.yml to Starlark packages or run them directly. Use when migrating existing Docker Compose workflows to Kurtosis.

install
source · Clone the upstream repo
git clone https://github.com/kurtosis-tech/kurtosis
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/kurtosis-tech/kurtosis "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/import-compose" ~/.claude/skills/kurtosis-tech-kurtosis-import-compose && rm -rf "$T"
manifest: skills/import-compose/SKILL.md
source content

Import Compose

Import Docker Compose files into Kurtosis, either running them directly or converting to Starlark.

Run a Docker Compose file

kurtosis import docker-compose.yml

This creates an enclave and runs all services defined in the Compose file.

Run with a named enclave

kurtosis import -n my-enclave docker-compose.yml

Convert only (don't run)

Generate Starlark code from a Compose file without executing:

kurtosis import -c docker-compose.yml

This outputs Starlark that you can save and customize.

Custom .env file

kurtosis import -e ./custom.env docker-compose.yml

Default is

.env
in the current directory.

Supported Compose features

Most common Compose features are supported:

  • Services with images
  • Port mappings
  • Environment variables
  • Volumes (converted to file artifacts)
  • Depends-on (converted to service ordering)
  • Networks (Kurtosis handles networking automatically)

Limitations

  • Build directives are not supported (images must be pre-built)
  • Some advanced networking features may not translate directly
  • Volume mounts become file artifacts (not persistent volumes)