Builds
Greyhound can take care of building and publishing container images from your source code for you. You can also use pre-built images directly.
Building from Source
Define a build in your .greyhound/config.yaml to have Greyhound build a Dockerfile:
builds:
- name: api-build
dockerfile: Dockerfile
Then reference it in a service or job:
services:
- name: api
image_from_build: api-build
ports:
- containerPort: 3000
Greyhound uses the commit SHA from your PR branch to build the image. The built image is pushed to ECR and referenced by the service.
Using Pre-Built Images
If you already have a container image, skip the build and reference it directly:
services:
- name: nginx
image: nginx:1.27-alpine
ports:
- containerPort: 80
image and image_from_build are mutually exclusive — use one or the other per service.
Build Configuration
Builds support custom Dockerfile paths, build arguments, and other options. See the Build schema for the full configuration reference.