Back to plugins

fledge-plugin-docker

vunknown Official other ★ 0 Updated 5/5/2026 GitHub
Install with fledge
fledge plugins install CorvidLabs/fledge-plugin-docker

fledge-plugin-docker

Docker build / push and compose up/down/logs helpers, wired to your fledge project. The image name defaults to your project name; the version defaults to latest.

Reference plugin demonstrating the fledge-v1 plugin protocol with the exec capability.

Install

fledge plugins install CorvidLabs/fledge-plugin-docker

You'll be prompted to grant the exec capability — every action shells out to docker.

Usage

fledge docker build                         # docker build -t <project>:latest .
fledge docker build --version v1.2.3        # docker build -t <project>:v1.2.3 .
fledge docker build --tag custom-name       # docker build -t custom-name:latest .
fledge docker build --file Dockerfile.prod  # use a different Dockerfile

fledge docker push --registry ghcr.io/myorg # docker push ghcr.io/myorg/<project>:latest
fledge docker push --registry ghcr.io/myorg --version v1.2.3

fledge docker up                            # docker compose up -d
fledge docker up --foreground               # docker compose up (attached)
fledge docker down                          # docker compose down
fledge docker logs                          # docker compose logs --tail=200 --follow

fledge docker --json                        # machine-readable

Use in lanes

[lanes.deploy-staging]
description = "Build, push, deploy to staging"
fail_fast = true
steps = [
  "test",
  { run = "fledge docker build --version $(git rev-parse --short HEAD)" },
  { run = "fledge docker push --registry ghcr.io/myorg --version $(git rev-parse --short HEAD)" },
  { run = "scripts/deploy.sh staging" },
]

[lanes.local-stack]
description = "Spin up the dev stack"
steps = [
  { run = "fledge docker up" }
]

JSON output

{
  "schema_version": 1,
  "action": "docker_build",
  "command": "docker build -t 'myapp:latest' -f 'Dockerfile' .",
  "image": "myapp:latest",
  "exit_code": 0,
  "ok": true
}

What this is and isn't

This plugin wraps docker. It doesn't reimplement docker. The win is that the image name is wired to your project automatically, the lane integration is consistent, and the JSON envelope means agents can drive deploy pipelines without scraping docker output.

For multi-stage builds, BuildKit features, multi-arch buildx, registry auth, etc. — use docker directly inside an inline lane step. This plugin is the 90% case.

License

MIT

Metadata

License
MIT
Default branch
main
Open issues
0
Topics
fledge-plugin

Built something similar?

Submit your plugin