Transform your Messy CI Scripts into Clean Code
Powerful, programmable open source CI/CD engine that runs your pipelines in containers — pre-push on your local machine and/or post-push in CI
Transform your Messy CI Scripts into Clean Code
Powerful, programmable open source CI/CD engine that runs your pipelines in containers — pre-push on your local machine and/or post-push in CI
Transform your Messy CI Scripts into Clean Code
Powerful, programmable open source CI/CD engine that runs your pipelines in containers — pre-push on your local machine and/or post-push in CI
Trusted by
Trusted by
"Dude, Where's my Platform?"
"Dude, Where's my Platform?"
"Dude, Where's my Platform?"
Solomon explains why he built Docker and Dagger, and why the world desperately needs to invest in optimizing each company's unique software factory.
Solomon explains why he built Docker and Dagger, and why the world desperately needs to invest in optimizing each company's unique software factory.
Solomon explains why he built Docker and Dagger, and why the world desperately needs to invest in optimizing each company's unique software factory.
The Dagger Platform
Benefits
No More
YAML Soup
No More YAML Soup
Replace complex CI scripts with a programmable platform
Replace complex CI scripts with a programmable platform
Standardized Dagger Functions
Standardized Dagger Functions
Pipelines just chain Dagger Functions - built by your team or by the community
Pipelines just chain Dagger Functions - built by your team or by the community
Eliminate Push and Pray
Eliminate Push and Pray
If it works on your laptop it'll work in CI
If it works on your laptop it'll work in CI
Cached for Speed
Cached for Speed
Avoid unnecessary rebuilds and test reruns when nothing has changed
Avoid unnecessary rebuilds and test reruns when nothing has changed
func (g *Golang) Base(version string) *Golang {
mod := dag.CacheVolume("gomodcache")
build := dag.CacheVolume("gobuildcache")
image := fmt.Sprintf("golang:%s", version)
c := dag.Container().
From(image).
WithMountedCache("/go/pkg/mod", mod).
WithMountedCache("/root/.cache/go-build", build)
g.Ctr = c
return g
import { dag, Container, Directory, object, func } from "@dagger.io/dagger"
@object()
// eslint-disable-next-line @typescript-eslint/no-unused-vars
class Ci {
/**
* example usage: "dagger call ci --source ."
*/
@func()
async ci(source: Directory): Promise<string> {
// Use Golang module to configure project
var goProject = dag.golang().withProject(source)
// Run Go tests using Golang module
await goProject.test()
// Get container with built binaries using Golang module
var image = await goProject.buildContainer()
// Push image to a registry using core Dagger API
var ref = await image.publish("ttl.sh/demoapp:1h")
// Scan image for vulnerabilities using Trivy module
return dag.trivy().scanContainer(dag.container().from(ref))
}
}
Multi-Language
Multi-Language
Pipelines in the same language as your app. Each Dagger Function is just an API call away.
Pipelines in the same language as your app. Each Dagger Function is just an API call away.
Visualize your pipelines
Visualize your pipelines
My test failed.
Is it a broken Pipeline?
Dagger gives you visibility into every aspect of your pipelines
My test failed. Is it a broken Pipeline?
Dagger gives you visibility into every aspect of your pipelines
Benefits
Standardized Dagger Functions
Pipelines just chain Dagger Functions - built by your team or by the community
Eliminate Push and Pray
If it works on your laptop it'll work in CI
Cached for Speed
Avoid unnecessary rebuilds and test reruns when nothing has changed
func (g *Golang) Base(version string) *Golang {
mod := dag.CacheVolume("gomodcache")
build := dag.CacheVolume("gobuildcache")
image := fmt.Sprintf("golang:%s", version)
c := dag.Container().
From(image).
WithMountedCache("/go/pkg/mod", mod).
WithMountedCache("/root/.cache/go-build", build)
g.Ctr = c
return g
import { dag, Container, Directory, object, func } from "@dagger.io/dagger"
@object()
// eslint-disable-next-line @typescript-eslint/no-unused-vars
class Ci {
/**
* example usage: "dagger call ci --source ."
*/
@func()
async ci(source: Directory): Promise<string> {
// Use Golang module to configure project
var goProject = dag.golang().withProject(source)
// Run Go tests using Golang module
await goProject.test()
// Get container with built binaries using Golang module
var image = await goProject.buildContainer()
// Push image to a registry using core Dagger API
var ref = await image.publish("ttl.sh/demoapp:1h")
// Scan image for vulnerabilities using Trivy module
return dag.trivy().scanContainer(dag.container().from(ref))
}
}
Multi-Language
Pipelines in the same language as your app. Each Dagger Function is just an API call away.
Visualize your pipelines
My test failed. Is it a broken Pipeline?
Dagger gives you visibility into every aspect of your pipelines
Don't take our Word for it…
Don't take our Word for it…
Conor Barber
Airbyte
Before Dagger it was 'Push and Pray.' Now, we have the same tool running locally and in CI, and that just streamlines everything. Now our mantra is test, test, test, test.
Andy Gonzalez
Fortune 500 company
Replacing our makefiles with Dagger has greatly simplified our process for deployments since it’s much faster (1-3 hours to 3 minutes)...The power, flexibility and capability behind Dagger is something that gets me excited.
Tony Worm
hof - the high code framework
With Dagger, I can define what I want my desired results to be, and Dagger figures out what needs to happen to get those results.
James Qualls
Discern
We want to be able to ship every single day, multiple times a day, as fast as we possibly can. Dagger is enabling us to do that.
Kevin Minehart
Grafana
With Dagger, we were able to go from something that takes an hour to something that takes 8 minutes.
George MacRorie
Flipt
Dagger feels like an actual innovation in CI/CD. There's a real attention to getting feedback from everyone and feeding that back into the design and building something that people need.
Conor Barber
Airbyte
Before Dagger it was 'Push and Pray.' Now, we have the same tool running locally and in CI, and that just streamlines everything. Now our mantra is test, test, test, test.
Andy Gonzalez
Fortune 500 company
Replacing our makefiles with Dagger has greatly simplified our process for deployments since it’s much faster (1-3 hours to 3 minutes)...The power, flexibility and capability behind Dagger is something that gets me excited.
Tony Worm
hof - the high code framework
With Dagger, I can define what I want my desired results to be, and Dagger figures out what needs to happen to get those results.
James Qualls
Discern
We want to be able to ship every single day, multiple times a day, as fast as we possibly can. Dagger is enabling us to do that.
Kevin Minehart
Grafana
With Dagger, we were able to go from something that takes an hour to something that takes 8 minutes.
George MacRorie
Flipt
Dagger feels like an actual innovation in CI/CD. There's a real attention to getting feedback from everyone and feeding that back into the design and building something that people need.
Conor Barber
Airbyte
Before Dagger it was 'Push and Pray.' Now, we have the same tool running locally and in CI, and that just streamlines everything. Now our mantra is test, test, test, test.
Andy Gonzalez
Fortune 500 company
Replacing our makefiles with Dagger has greatly simplified our process for deployments since it’s much faster (1-3 hours to 3 minutes)...The power, flexibility and capability behind Dagger is something that gets me excited.
Tony Worm
hof - the high code framework
With Dagger, I can define what I want my desired results to be, and Dagger figures out what needs to happen to get those results.
James Qualls
Discern
We want to be able to ship every single day, multiple times a day, as fast as we possibly can. Dagger is enabling us to do that.
Kevin Minehart
Grafana
With Dagger, we were able to go from something that takes an hour to something that takes 8 minutes.
George MacRorie
Flipt
Dagger feels like an actual innovation in CI/CD. There's a real attention to getting feedback from everyone and feeding that back into the design and building something that people need.
Conor Barber
Airbyte
Before Dagger it was 'Push and Pray.' Now, we have the same tool running locally and in CI, and that just streamlines everything. Now our mantra is test, test, test, test.
Andy Gonzalez
Fortune 500 company
Replacing our makefiles with Dagger has greatly simplified our process for deployments since it’s much faster (1-3 hours to 3 minutes)...The power, flexibility and capability behind Dagger is something that gets me excited.
Tony Worm
hof - the high code framework
With Dagger, I can define what I want my desired results to be, and Dagger figures out what needs to happen to get those results.
James Qualls
Discern
We want to be able to ship every single day, multiple times a day, as fast as we possibly can. Dagger is enabling us to do that.
Kevin Minehart
Grafana
With Dagger, we were able to go from something that takes an hour to something that takes 8 minutes.
George MacRorie
Flipt
Dagger feels like an actual innovation in CI/CD. There's a real attention to getting feedback from everyone and feeding that back into the design and building something that people need.
Conor Barber
Airbyte
Before Dagger it was 'Push and Pray.' Now, we have the same tool running locally and in CI, and that just streamlines everything. Now our mantra is test, test, test, test.
Andy Gonzalez
Fortune 500 company
Replacing our makefiles with Dagger has greatly simplified our process for deployments since it’s much faster (1-3 hours to 3 minutes)...The power, flexibility and capability behind Dagger is something that gets me excited.
Tony Worm
hof - the high code framework
With Dagger, I can define what I want my desired results to be, and Dagger figures out what needs to happen to get those results.
James Qualls
Discern
We want to be able to ship every single day, multiple times a day, as fast as we possibly can. Dagger is enabling us to do that.
Kevin Minehart
Grafana
With Dagger, we were able to go from something that takes an hour to something that takes 8 minutes.
George MacRorie
Flipt
Dagger feels like an actual innovation in CI/CD. There's a real attention to getting feedback from everyone and feeding that back into the design and building something that people need.
Conor Barber
Airbyte
Before Dagger it was 'Push and Pray.' Now, we have the same tool running locally and in CI, and that just streamlines everything. Now our mantra is test, test, test, test.
Andy Gonzalez
Fortune 500 company
Replacing our makefiles with Dagger has greatly simplified our process for deployments since it’s much faster (1-3 hours to 3 minutes)...The power, flexibility and capability behind Dagger is something that gets me excited.
Tony Worm
hof - the high code framework
With Dagger, I can define what I want my desired results to be, and Dagger figures out what needs to happen to get those results.
James Qualls
Discern
We want to be able to ship every single day, multiple times a day, as fast as we possibly can. Dagger is enabling us to do that.
Kevin Minehart
Grafana
With Dagger, we were able to go from something that takes an hour to something that takes 8 minutes.
George MacRorie
Flipt
Dagger feels like an actual innovation in CI/CD. There's a real attention to getting feedback from everyone and feeding that back into the design and building something that people need.
Conor Barber
Airbyte
Before Dagger it was 'Push and Pray.' Now, we have the same tool running locally and in CI, and that just streamlines everything. Now our mantra is test, test, test, test.
Andy Gonzalez
Fortune 500 company
Replacing our makefiles with Dagger has greatly simplified our process for deployments since it’s much faster (1-3 hours to 3 minutes)...The power, flexibility and capability behind Dagger is something that gets me excited.
Tony Worm
hof - the high code framework
With Dagger, I can define what I want my desired results to be, and Dagger figures out what needs to happen to get those results.
James Qualls
Discern
We want to be able to ship every single day, multiple times a day, as fast as we possibly can. Dagger is enabling us to do that.
Kevin Minehart
Grafana
With Dagger, we were able to go from something that takes an hour to something that takes 8 minutes.
George MacRorie
Flipt
Dagger feels like an actual innovation in CI/CD. There's a real attention to getting feedback from everyone and feeding that back into the design and building something that people need.
Conor Barber
Airbyte
Before Dagger it was 'Push and Pray.' Now, we have the same tool running locally and in CI, and that just streamlines everything. Now our mantra is test, test, test, test.
Andy Gonzalez
Fortune 500 company
Replacing our makefiles with Dagger has greatly simplified our process for deployments since it’s much faster (1-3 hours to 3 minutes)...The power, flexibility and capability behind Dagger is something that gets me excited.
Tony Worm
hof - the high code framework
With Dagger, I can define what I want my desired results to be, and Dagger figures out what needs to happen to get those results.
James Qualls
Discern
We want to be able to ship every single day, multiple times a day, as fast as we possibly can. Dagger is enabling us to do that.
Kevin Minehart
Grafana
With Dagger, we were able to go from something that takes an hour to something that takes 8 minutes.
George MacRorie
Flipt
Dagger feels like an actual innovation in CI/CD. There's a real attention to getting feedback from everyone and feeding that back into the design and building something that people need.