ワンクリックで
radius-build-images
// Build Radius container images from source for local development and testing. Push to any container registry that your Kubernetes cluster can pull from.
// Build Radius container images from source for local development and testing. Push to any container registry that your Kubernetes cluster can pull from.
| name | radius-build-images |
| description | Build Radius container images from source for local development and testing. Push to any container registry that your Kubernetes cluster can pull from. |
| argument-hint | Optional: target registry (e.g. ghcr.io/my-username, myacr.azurecr.io/radius) — or leave blank to be prompted |
Build Radius service images from source and push them to a container registry that your Kubernetes cluster can reach. This follows the workflow documented in docs/contributing/contributing-code/contributing-code-building/README.md and docs/contributing/contributing-code/contributing-code-control-plane/generating-and-installing-custom-build.md.
The following images are built from this repository:
| Image | Source |
|---|---|
ucpd | deploy/images/ucpd |
applications-rp | deploy/images/applications-rp |
dynamic-rp | deploy/images/dynamic-rp |
controller | deploy/images/controller |
bicep | deploy/images/bicep |
pre-upgrade | deploy/images/pre-upgrade |
testrp | test/testrp |
magpiego | test/magpiego |
Not built here: The
deployment-engineanddashboardimages are not built from this repository. They are published separately toghcr.io/radius-project/. When installing with a custom registry you need to pin these to their public location — see theradius-install-customskill.
Check that the required tools are available:
docker info — confirm the Docker daemon is running.make --version — confirm GNU Make is installed.go version — the required version is in go.mod.If any prerequisite is missing, stop and report which tool needs to be installed.
Ask the user for their container registry if DOCKER_REGISTRY is not already set. The registry must be one the user can push to and their Kubernetes cluster can pull from.
export DOCKER_REGISTRY=ghcr.io/<your-registry>
export DOCKER_TAG_VERSION=latest
Note: The user must already be logged in to the registry (
docker login,az acr login, etc.). If you get authentication errors, ask the user to log in first.
Default: If
DOCKER_REGISTRYis not set, the Makefile defaults to your OS username (frombuild/docker.mk). Always set it explicitly.
Build all images and push them to the registry in one command:
DOCKER_REGISTRY=${DOCKER_REGISTRY} DOCKER_TAG_VERSION=${DOCKER_TAG_VERSION} make docker-build docker-push
This compiles all Go binaries, builds each Docker image, and pushes them to the registry. The copy-manifests step runs automatically.
To build and push a single image (useful for fast iteration):
make docker-build-<image-name> && make docker-push-<image-name>
# e.g. make docker-build-applications-rp && make docker-push-applications-rp
Confirm the images were pushed:
docker images --filter "reference=${DOCKER_REGISTRY}/*:${DOCKER_TAG_VERSION}"
Then proceed to the radius-install-custom skill to install Radius on your cluster.
For private registries that require authentication to pull, you will need to create a Kubernetes image pull secret when installing. See the radius-install-custom skill for details.
For native linux/arm64 images (e.g. on Apple Silicon with an arm64 Kubernetes cluster), first set up buildx (one-time):
make configure-buildx
Then build and push all architectures:
DOCKER_REGISTRY=${DOCKER_REGISTRY} DOCKER_TAG_VERSION=${DOCKER_TAG_VERSION} make docker-multi-arch-push
| Goal | Command |
|---|---|
| Set registry | export DOCKER_REGISTRY=ghcr.io/<your-registry> && export DOCKER_TAG_VERSION=latest |
| Build + push all images | make docker-build docker-push |
| Build all images | make docker-build |
| Push all images | make docker-push |
| Single image build + push | make docker-build-<name> && make docker-push-<name> |
| Multi-arch build + push | make docker-multi-arch-push |
| Setup buildx (one-time) | make configure-buildx |
| Variable | Default | Description |
|---|---|---|
DOCKER_REGISTRY | OS username (from build/docker.mk) | Target registry for built images. Set explicitly to your registry. |
DOCKER_TAG_VERSION | latest | Image tag |
DOCKER_CACHE_GHA | 0 | Set to 1 to enable GitHub Actions layer caching |
Perform an automated code review for a GitHub pull request in the Radius repository. Produces a PR analysis document, a PR review document, and a shell script that posts the review comments via the GitHub API. Use when asked to review a PR, generate review feedback for a PR, or create a script that posts PR review comments.
Build the Radius CLI (rad) binary from source. Use when compiling rad, cross-compiling for another platform, creating a debug build, or verifying the CLI builds correctly after code changes.
Install Radius on a Kubernetes cluster from custom-built container images. Works with any cluster and any registry the cluster can pull from.
Update, create, review, and find gaps in contributor documentation including CONTRIBUTING.md, docs/contributing/, and docs/architecture/. Use when a task affects contributor setup, build, test, debug, review, or architecture guidance, or when a code review needs a documentation impact assessment.
Document application architectures with Mermaid diagrams. Use for: generating architecture overviews, component diagrams, sequence diagrams from code, explaining complex Go codebases, answering architecture questions, suggesting architectural improvements, producing entity-relationship diagrams, and distilling code into human-readable descriptions.