Getting Started
Install commands come from the project's installation docs, verified against the
v6.4.xline. Commands assume a workingkubectlcontext pointing at a cluster you can deploy to.
Prerequisites
- A Kubernetes cluster and a
kubectlcontext with permission to create and modify workloads in a namespace. A local cluster (KIND, minikube, Docker Desktop) is fine. kubectlinstalled and pointed at that cluster; DevSpace reads the same kube-context.- A container image builder if you want DevSpace to build images (Docker or BuildKit locally, or kaniko in-cluster).
DevSpace installs nothing in the cluster. It is a single client-side binary (installation docs).
Install
Pick one. Homebrew on macOS or Linux:
brew install devspaceDirect binary download on Linux (AMD64):
curl -L -o devspace "https://github.com/loft-sh/devspace/releases/latest/download/devspace-linux-amd64" && sudo install -c -m 0755 devspace /usr/local/binOn Windows, scoop install devspace or the PowerShell download in the installation docs. Confirm the binary is on your PATH:
devspace versionA first working setup
The core job is developing an app against the cluster with live sync. The shortest real path is to initialize a devspace.yaml for an existing project and start a dev session.
From your project directory, generate a
devspace.yaml. The interactiveinitinspects the project and writes the config, wiring up how to build the image and deploy it.bashdevspace initSelect a namespace to work in (DevSpace uses your current kube-context):
bashdevspace use namespace my-dev-namespaceStart the dev session. This runs the
devpipeline: build the image, deploy, replace the target pod with a dev pod, inject the helper, and open the two-way file sync.bashdevspace dev
Leave devspace dev running. It streams the pipeline's progress and then holds the session open with the file sync active. Edit a file locally and the change is synced into the running container without a rebuild.
Verify it works
While devspace dev runs, confirm the dev pod is up in your namespace:
kubectl get pods -n my-dev-namespaceYou should see the replaced development pod running. To confirm the sync path end to end, open a terminal inside the container and look for a file you just edited locally:
devspace enterA healthy session shows the sync log reporting uploaded and downloaded changes as you edit files, and the injected devspacehelper binary present at /tmp/devspacehelper inside the container. When you stop the session, DevSpace reverts the pod replacement and restores the original workload.
Where to go next
For the full devspace.yaml reference (pipelines, imports, dev config, build and deploy backends), production and CI usage, and configuring SSH or port-forwarding, follow the official documentation at https://www.devspace.sh/docs/. The Pipelines reference (https://www.devspace.sh/docs/configuration/pipelines/) covers overriding the default workflows described in the Architecture page.