CONFIGUREONCE.INITIALIZEANYWHERE.
Dock (Deployment Operations and Configurations Kit) is a local-first project setup CLI. Describe a project in dock.yaml, and Dock validates the config and coordinates your local Docker installation to initialize and run the container.
python -m pip install dock-apiThe V1 Loop
From config
to container.
A predictable, repeatable lifecycle for projects starting from a published Docker image or a GitHub repository.
$ python -m pip install dock-api
$ dock validate -c ./dock.yaml
✓ dock.yaml is valid
$ dock plan -c ./dock.yaml
Plan (hello-nginx):
- Pull published image: nginx:alpine
- Bind port: host 8080 -> container 80
- Health check: http GET / on port 80
$ dock sync -c ./dock.yaml
(State comparison: read-only preview of host prerequisites & container changes)
$ dock init -c ./dock.yaml
✓ Image pulled: nginx:alpine
✓ Container dock-hello-nginx created and started
✓ HTTP health check passed on http://localhost:8080/
$ dock status --running -c ./dock.yaml
Project: hello-nginx
System Requirements: Satisfied
Docker: Running
Containers (Running):
- dock-hello-nginx (Up 2m, Port 8080 -> 80)How it works
A clear path
to running code.
dock.yaml
Project definition: published image or GitHub source, port bindings, and HTTP health check.
Dock CLI
Validates config with dock validate, inspects with dock plan / sync, and applies with dock init.
Docker Engine
Uses your machine's Docker daemon to pull published images or build local images from Git.
Running Container
Executes the container locally with mapped ports and verifies the configured HTTP health check.
Two Starting Points
Bring the image or source.
Dock handles the local setup.
Dock V1 supports one application per dock.yaml, delegating execution to your local Docker installation.
Run a published image
Point application.image at Docker Hub or GHCR. Dock pulls the image and starts the container locally with mapped ports.
Build from GitHub
Provide application.source with type: github and a Dockerfile. Dock fetches the branch and builds it locally.
Command Surface
Focused CLI.
Explicit state.
Each command does one explicit job in the local project lifecycle, ensuring your container setup is transparent and repeatable.
-f) are not in V1.dock validatedock statusdock plandock syncdock initdock startdock stopdock logsdock -v