# K8S cheat sheet for developer, daily used k8s cheat sheet!!

![music group performing on stage with empty audience seats](https://images.unsplash.com/photo-1519683109079-d5f539e1542f?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=1000&q=80 align="left")

## **Basic Commands**

1. `kubectl get`: list resources
    
2. `kubectl describe`: show details of a resource
    
3. `kubectl create`: create a resource from a file or stdin
    
4. `kubectl apply`: apply a configuration file to create or update resources
    
5. `kubectl delete`: delete a resource
    
6. `kubectl edit`: edit a resource live
    

## **Pods**

1. `kubectl run`: create a new deployment with one or more replicas
    
2. `kubectl logs`: show the logs of a pod
    
3. `kubectl exec`: run a command in a running container in a pod
    

## **Deployments**

* 1. `kubectl create deployment <deployment name> --image=<image name>`: Create a new deployment with a specified image.
        
    2. `kubectl get deployments`: List all deployments in the current namespace.
        
    3. `kubectl describe deployment <deployment name>`: Get detailed information about a deployment.
        
    4. `kubectl rollout status deployment/<deployment name>`: Check the status of a deployment rollout.
        
    5. `kubectl rollout history deployment/<deployment name>`: View the revision history of a deployment.
        
    6. `kubectl rollout undo deployment/<deployment name>`: Roll back a deployment to the previous revision.
        
    7. `kubectl scale deployment <deployment name> --replicas=<number>`: Scale the number of replicas in a deployment.
        
    8. `kubectl set image deployment/<deployment name> <container name>=<new image>`: Update the image of a container in a deployment.
        
    9. `kubectl delete deployment <deployment name>`: Delete a deployment.
        

## **Services**

* 1. `kubectl get services`: View a list of all services in the current namespace.
        
    2. `kubectl describe service <service-name>`: Get detailed information about a specific service.
        
    3. `kubectl create service <service-type> <service-name> [--tcp=<port>] [--dry-run]`: Create a new service. `<service-type>` can be `ClusterIP`, `NodePort`, or `LoadBalancer`.
        
    4. `kubectl expose <resource-type> <resource-name> [--port=<port>] [--target-port=<target-port>] [--type=<service-type>] [--name=<service-name>]`: Expose a port for a resource (e.g. a deployment or pod) as a new service. `<service-type>` can be `ClusterIP`, `NodePort`, or `LoadBalancer`.
        
    5. `kubectl edit service <service-name>`: Edit the configuration of an existing service.
        
    6. `kubectl delete service <service-name>`: Delete a service.
        
* Note that some of these commands require additional parameters, such as the port number or target port. Also, the `expose` command is deprecated in recent versions of Kubernetes, so it's recommended to use `create service` instead.
    

## **Configurations**

1. `kubectl config view`: View the current kubeconfig file configuration.
    
2. `kubectl config use-context <context-name>`: Set the active context in the kubeconfig file.
    
3. `kubectl config set-context <context-name> --namespace=<namespace>`: Set a namespace for a specific context.
    
4. `kubectl config set-cluster <cluster-name> --server=<server-url>`: Set the server URL for a cluster in the kubeconfig file.
    
5. `kubectl config set-credentials <user-name> --token=<token>`: Set the credentials for a user in the kubeconfig file.
    
6. `kubectl config delete-context <context-name>`: Delete a context from the kubeconfig file.
    
7. `kubectl config unset <property>`: Unset a specific property in the current context.
    
8. `kubectl config use-context <context-name> --kubeconfig=<file-path>`: Set the active context in a specific kubeconfig file.
    
9. `kubectl config view --minify`: View the current kubeconfig file configuration in a compact format.
    
10. `kubectl config current-context`: Display the name of the current context in the kubeconfig file.
    

There are many more commands but in general if you are a developer these commands are more than enough.

I hope this helps, you!!

**More such articles:**

[https://medium.com/techwasti](Link)

[https://www.youtube.com/channel/UCiTaHm1AYqMS4F4L9zyO7qA](Link)

[https://www.techwasti.com/](Link)

\==========================\*\*=========================

**If this article adds any value to you then please clap and comment.**

**Let’s connect on** [**Stackoverflow**](http://stackoverflow.com/users/3187349/maheshwar-ligade)**,** [**LinkedIn**](https://in.linkedin.com/in/maheshwar-ligade-14447841)**, &** [**Twitter**](https://twitter.com/MaheshwarLigade)**.**
