olai-stack-runtime 0.0.6

Run trestle environments on Docker Compose: a ComposeEngine over the Docker CLI, status, health and events
Documentation
1
2
3
{"Command":"\"sleep 3600\"","CreatedAt":"2026-11-02 20:55:26 +0100 CET","Engine":"","ExitCode":0,"Health":"unhealthy","ID":"c033615f2e94","Image":"python:3.13-alpine","Labels":"com.docker.compose.config-hash=8161396737a2b3321b4616d94bdb27f5e977ce8c1b7749757bf6bf29f36efc62,com.docker.compose.container-number=1,com.docker.compose.oneoff=False,com.docker.compose.project=trestle-capture,com.docker.compose.project.config_files=/capture/compose.yaml,com.docker.compose.project.working_dir=/capture,com.docker.compose.service=broken,com.docker.compose.depends_on=,com.docker.compose.image=sha256:4dec53ac220d1cca3d31d40d346e4c2cd3540c1d7eb058ed70a3f94934728cf2,com.docker.compose.version=5.6.1","LocalVolumes":"0","Mounts":"","Name":"trestle-capture-broken-1","Names":"trestle-capture-broken-1","Networks":"trestle-capture_default","Ports":"","Project":"trestle-capture","Publishers":[],"RunningFor":"12 seconds ago","Service":"broken","Size":"0B","State":"running","Status":"Up 12 seconds (unhealthy)"}
{"Command":"\"sh -c 'i=0; while t…\"","CreatedAt":"2026-11-02 20:55:16 +0100 CET","Engine":"","ExitCode":137,"Health":"","ID":"95e45cf16b9b","Image":"python:3.13-alpine","Labels":"com.docker.compose.config-hash=5eb9f0d2003a45df9504e7b610b99f76acd706881591655edd2c4405ab189b02,com.docker.compose.container-number=1,com.docker.compose.image=sha256:4dec53ac220d1cca3d31d40d346e4c2cd3540c1d7eb058ed70a3f94934728cf2,com.docker.compose.oneoff=False,com.docker.compose.project.working_dir=/capture,com.docker.compose.service=ticker,com.docker.compose.version=5.6.1,com.docker.compose.depends_on=,com.docker.compose.project=trestle-capture,com.docker.compose.project.config_files=/capture/compose.yaml","LocalVolumes":"0","Mounts":"","Name":"trestle-capture-ticker-1","Names":"trestle-capture-ticker-1","Networks":"trestle-capture_default","Ports":"","Project":"trestle-capture","Publishers":[],"RunningFor":"22 seconds ago","Service":"ticker","Size":"0B","State":"exited","Status":"Exited (137) Less than a second ago"}
{"Command":"\"python -m http.serv…\"","CreatedAt":"2026-11-02 20:55:16 +0100 CET","Engine":"","ExitCode":0,"Health":"healthy","ID":"d9f5b9d5da39","Image":"python:3.13-alpine","Labels":"com.docker.compose.config-hash=229b47b75eb993af2200d096674d2a36e7ca815d843020aa305719a123a23bdf,com.docker.compose.depends_on=,com.docker.compose.image=sha256:4dec53ac220d1cca3d31d40d346e4c2cd3540c1d7eb058ed70a3f94934728cf2,com.docker.compose.project.config_files=/capture/compose.yaml,com.docker.compose.project.working_dir=/capture,com.docker.compose.service=web,com.docker.compose.version=5.6.1,com.docker.compose.container-number=1,com.docker.compose.oneoff=False,com.docker.compose.project=trestle-capture","LocalVolumes":"0","Mounts":"","Name":"trestle-capture-web-1","Names":"trestle-capture-web-1","Networks":"trestle-capture_default","Ports":"127.0.0.1:18000-\u003e8000/tcp","Project":"trestle-capture","Publishers":[{"URL":"127.0.0.1","TargetPort":8000,"PublishedPort":18000,"Protocol":"tcp"}],"RunningFor":"22 seconds ago","Service":"web","Size":"0B","State":"running","Status":"Up 22 seconds (healthy)"}