Set Namespace _top_ | Kubectl
kubectl set namespace dev-env
kubectl config get-contexts kubectl set namespace staging kubectl config get-contexts | Purpose | Command | |---------|---------| | Temporary namespace for one command | kubectl get pods -n my-namespace | | Change context namespace explicitly | kubectl config set-context --current --namespace=my-namespace | | View current namespace | kubectl config view --minify -o jsonpath='..namespace' | Common mistakes ❌ Expecting it to update existing objects → No, it only changes default for future commands. kubectl set namespace
❌ → Make sure your context is set first with kubectl config use-context . When to use kubectl set namespace ✅ You frequently work in one namespace and are tired of -n flag. ✅ You’re switching between namespaces often. ✅ You want to avoid accidentally running commands in the wrong namespace. Would you like a comparison with kubens (from kubectx) or tips for scripting namespace changes? ✅ You’re switching between namespaces often
Namespace set to "my-namespace". kubectl config view --minify | grep namespace or Namespace set to "my-namespace"
kubectl set namespace --current <namespace> 1. Check current namespace context kubectl config get-contexts Look under the NAMESPACE column for your current context. If empty, it means default namespace is used. 2. Change to a different namespace kubectl set namespace my-namespace Output example:
kubectl config get-contexts Now the NAMESPACE column should show my-namespace . kubectl get pods This will list pods only in my-namespace , not all namespaces. Important notes | Feature | Behavior | |---------|----------| | Works on | Current context only | | Persistent | Yes — saved in kubeconfig | | Overwrites | Existing namespace in current context | | No effect on | Existing resources, deployments, services | Examples Set namespace for current context: