Implement dmrlet orchestrator for Docker Model Runner#83
Draft
Implement dmrlet orchestrator for Docker Model Runner#83
Conversation
- Add Cargo workspace with 8 crates - dmrlet-core: Core types (Model, Worker, Endpoint, Config, Error, GPU) - dmrlet-runtime: Process-based runtime for macOS/Windows - dmrlet-scheduler: GPU-aware scheduler with placement logic - dmrlet-network: Health checking, load balancing, service discovery - dmrlet-store: Model cache with LRU eviction - dmrlet-api: REST API server with Axum - dmrlet-daemon: Main daemon binary (dmrletd) - dmrlet-cli: CLI tool (dmrlet) with deploy, scale, delete, status commands - Add proto file for future gRPC support - Update .gitignore for Rust build artifacts Co-authored-by: ericcurtin <1694275+ericcurtin@users.noreply.github.com>
- Fix OCI model path to use hash-based filenames for uniqueness - Improve HTTP client error message with actionable guidance - Update tests for new model path format Co-authored-by: ericcurtin <1694275+ericcurtin@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Implement dmrlet orchestrator for Docker Model Runner
Implement dmrlet orchestrator for Docker Model Runner
Feb 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds dmrlet, a Kubernetes-like orchestrator for Docker Model Runner written in Rust. Enables direct client-to-inference-server communication, bypassing central daemon for data-plane operations.
Architecture
Crates
dmrlet-core— Types: DeploymentSpec, Worker, Endpoint, Config, GPU detectiondmrlet-scheduler— GPU-aware placement, resource allocation, port managementdmrlet-runtime— Process-based worker lifecycle (macOS/Windows; containerd placeholder for Linux)dmrlet-network— Health checking, round-robin load balancing, service discoverydmrlet-store— Model cache with LRU eviction, OCI store placeholderdmrlet-api— REST API via Axumdmrlet-daemon—dmrletdbinarydmrlet-cli—dmrletCLICLI
dmrlet deploy ai/llama3:8b --replicas=2 --gpu=1 dmrlet scale llama3 4 dmrlet status dmrlet endpoints # Get direct worker URLs dmrlet gpusREST API
Tests
35 unit tests covering scheduling, networking, storage, and core types.
Original prompt
dmrlet Implementation Plan
Overview
dmrlet is a Kubernetes-like orchestrator for Docker Model Runner, written in Rust. It enables clients to
communicate directly with inference servers, bypassing the central daemon for data-plane operations.
Architecture
Key Advantages Over Kubernetes
Project Structure
CLI Commands