Most organizations have Dockerfiles somewhere, and they might be managed by another team or only interacted with the built images. If you're using Dagger to turn your pipelines into code, you have a couple of options on how to handle your Dockerfiles: build from existing Dockerfiles or turn them into Dagger code. Building from existing Dockerfiles is easy and can be done in Python, Go, Node.js, or via the GraphQL API. Turning Dockerfiles into Dagger code means taking full advantage of both Dagger and your language of choice to create testable, extensible builds and pipelines. This approach also offers more control with types, functions, loops, and conditionals. Fortunately, an excellent blog post and technical guide illustrate this approach in Go, Python, and Node.js, showing how to understand and break down a Dockerfile into steps, create a Dagger client, and write a pipeline to replicate the Dockerfile build process. A handy table is also provided to map common Dockerfile commands to their Dagger equivalents.