Docker runner plugin for Weft
Project description
weft-docker
Docker runner plugin for Weft.
This extension adds the docker runner via the weft.runners entry-point
group. It supports one-shot command TaskSpecs and the Docker-backed
one-shot provider CLI agent lane documented in Weft's agent runtime spec.
Current host support:
- Linux: supported
- macOS: supported
- Windows: not currently supported
Container Profiles
Command tasks can select a project-local Docker container profile through
spec.runner.options.container_profile. Profiles are useful when the Weft
manager runs on the host but the task must run inside a Docker network where
service names such as db, redis, or internal-api resolve.
TaskSpec shape:
{
"spec": {
"type": "command",
"process_target": "python3",
"args": ["-m", "my_project.probe"],
"runner": {
"name": "docker",
"options": {
"container_profile": "ops"
}
}
}
}
By default, profiles are loaded from .weft/docker-profiles.toml. A task can
override that with spec.runner.options.container_profile_file.
version = 1
# Optional. Relative values are resolved from this file's directory.
root = ".."
[profiles.ops]
image = "ghcr.io/example/project:latest"
network = "project_ops"
mount_workdir = false
container_workdir = "/app/project"
env_from_host = ["OPTIONAL_TOKEN"]
required_env_from_host = ["REQUIRED_TOKEN"]
[profiles.ops.env]
SERVICE_URL = "https://internal-api:8443"
[[profiles.ops.mounts]]
source = "config"
target = "/app/project/config"
read_only = true
Profile values are defaults. Explicit TaskSpec spec.runner.options and
spec.env win over profile values. env_from_host forwards named host
environment variables when present. required_env_from_host requires the
merged task environment to contain the named value, either from host env,
profile env, or explicit TaskSpec env.
Relative profile mount and build paths resolve against
container_profile_root, then top-level TOML root, then the profile file's
directory. Runtime checks for named Docker networks and profile-sourced mount
or build paths run only during explicit preflight validation.
Container profiles currently apply to command tasks only. Docker-backed agent
tasks continue to use provider-specific image recipes, container runtime
descriptors, and work_item_mounts.
Release tag:
weft_docker/vX.Y.Z
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file weft_docker-0.9.70.tar.gz.
File metadata
- Download URL: weft_docker-0.9.70.tar.gz
- Upload date:
- Size: 23.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.11 {"installer":{"name":"uv","version":"0.11.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
891a65875e15fc65a44771e9c2871d68364c711f86056914a0e8647b1b297839
|
|
| MD5 |
2a732042fb20c8c654b0546d04d01275
|
|
| BLAKE2b-256 |
1e3e4eb09631f32dae77f99ddc7825c2d43c9766a94aeb636cdd3243ada88542
|
File details
Details for the file weft_docker-0.9.70-py3-none-any.whl.
File metadata
- Download URL: weft_docker-0.9.70-py3-none-any.whl
- Upload date:
- Size: 28.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.11 {"installer":{"name":"uv","version":"0.11.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
640bb1f7d339c95a48e343c158e322477d5453ac47dd5244ab884ad381e66a9b
|
|
| MD5 |
27faa111e2f88c9ef2e49d02641b0c20
|
|
| BLAKE2b-256 |
652fe922805aa0dde4a2a58a6ca1b759452cea713ac163bf8e84bb2d445e15a8
|