Remember the loop from chapter one that stretched from seconds to 2–5 minutes on every change? This is the chapter where we bring it back down to seconds.
Part eight of the series is the emotional climax. Tilt orchestrates your inner loop: it watches files, builds the image for you, deploys to the cluster for you, and — crucially — can update code right inside the running container in seconds. Plus a web dashboard where all your services, statuses, and logs live on one screen, no juggling ten terminals.
The three pillars of any Tiltfile: docker_build (how to build), k8s_yaml (what to deploy), k8s_resource (fine-tuning — port forwarding). The magic is that Tilt matches images from docker_build to images in the manifests by tag and substitutes the fresh build. The star of the show is Live Update: instead of "rebuild image → redeploy pod," Tilt copies the changed files straight into the live container. With FastAPI it pairs beautifully with uvicorn --reload.
I break down the strict order of live_update steps (fall_back_on → sync → run → restart), two beginner traps (sync only within the build context; run can't come before sync), the no-hot-reload path via restart_process, and an honest comparison of Tilt vs Skaffold vs DevSpace. https://dorokhovich.com/blog/local-k8s-tilt-fast-dev-loop?utm_source=devto&utm_medium=syndication&utm_campaign=local-k8s-tilt-fast-dev-loop
Top comments (0)