Introduction
Waypoint abstracts the build-deploy-release lifecycle behind a single configuration file and CLI. Developers describe how their application is built and where it runs, and Waypoint handles container image creation, deployment to the target platform, and traffic routing — regardless of whether the destination is Kubernetes, AWS ECS, Nomad, or Docker.
What Waypoint Does
- Builds container images using Docker, Cloud Native Buildpacks, or custom builders
- Deploys to Kubernetes, AWS ECS, HashiCorp Nomad, Docker, and more via plugins
- Manages traffic splitting and URL-based releases for canary and blue-green deployments
- Provides a web UI dashboard for deployment history, logs, and exec sessions
- Exposes a URL service that gives every deployment a unique, publicly accessible URL
Architecture Overview
Waypoint runs a gRPC server backed by a Bolt database for state. The server coordinates runners — agents that execute build, deploy, and release operations. A waypoint.hcl file at the repo root defines the application's lifecycle using plugin-based stanzas (build, deploy, release). Runners pull jobs from the server, execute them locally or in-cluster, and report results back. The optional URL service provides automatic ingress for each deployment.
Self-Hosting & Configuration
- Server installs on Kubernetes, Nomad, ECS, or Docker with
waypoint install - Application configuration lives in
waypoint.hclusing HCL syntax - Runners can be on-demand (Kubernetes Jobs) or static (long-lived agents)
- Workspace and project scoping isolates environments (dev, staging, production)
- Integrates with HCP Waypoint for managed server hosting and team collaboration
Key Features
- Platform-agnostic deployment pipeline from a single config file
- Built-in URL service for preview environments on every deployment
- Exec, logs, and status accessible from CLI or web UI
- Plugin system supports custom build, deploy, and release strategies
- Git-triggered deployments via polling or webhook integration
Comparison with Similar Tools
- Kamal — SSH-based Docker deployment; simpler but limited to Docker hosts
- Argo CD — GitOps-based Kubernetes delivery; declarative manifest sync rather than build-deploy-release workflow
- Dagger — Programmable CI/CD engine; broader pipeline scope but no built-in deployment abstraction
- Skaffold — Kubernetes development tool; focused on inner-loop iteration rather than production releases
- Fly.io / Railway — Managed PaaS with similar developer experience but closed-source infrastructure
FAQ
Q: Does Waypoint replace Terraform? A: No. Terraform manages infrastructure (VPCs, clusters, databases). Waypoint manages application deployment onto that infrastructure. They complement each other.
Q: Can I use Waypoint without the server?
A: A server is required for state tracking and runner coordination. For local experimentation, waypoint install -platform=docker runs everything on your machine.
Q: What languages and frameworks does Waypoint support? A: Any application that can be containerized. Build plugins support Dockerfiles, Buildpacks, and custom scripts. The deployment target determines what runs.
Q: Is Waypoint actively maintained? A: HashiCorp open-sourced Waypoint in 2020. Development has slowed since 2023, but the project remains functional and the community continues to use it for multi-platform deployments.