Commands
Python commands
Execute | Command |
---|---|
Create virtual env | python -m venv venv |
Activate virtual environment | Windows ./venv/bin/activate Linux source venv/bin/activate |
Deactivate virtual environment | deactivate |
Install requirements.txt | pip install -r requirements.txt |
Create requirements.txt | pip freeze > requirements.txt |
Upgrade a Package | pip install --upgrade <package-name> |
List Installed Packages | pip list |
Show Package Details | pip show <package-name> |
Install package from git repository | pip install git+https://github.com/psf/requests.git |
Configure Pip Settings | pip config set global.index-url https://pypi.org/simple |
Docker commands
Category | Command |
---|---|
Image Management | |
Build an image from a Dockerfile | docker build -t <image_name> . |
Build an image without cache | docker build -t <image_name> . --no-cache |
List all images | docker images |
Delete an image | docker rmi <image_name> |
Remove all unused images | docker image prune |
Delete all images | docker rmi $(docker images -q) |
Tag an image | docker tag <image_id> <new_image_name:tag> |
Pull an image from Docker Hub | docker pull <image_name> |
Push an image to Docker Hub | docker push <image_name> |
Container Management | |
Run a container | docker run <image_name> |
Run and remove container on stop | docker run --rm -p 80:5001 <image_name> |
Create and name a container | docker run --name <container_name> <image_name> |
Run in the background (detached) | docker run -d <image_name> |
Run with port mapping | docker run -p <host_port>:<container_port> <image_name> |
Run with volume mapping | docker run -v <host_path>:<container_path> <image_name> |
Start a container | docker start <container_name> |
Stop a container | docker stop <container_name> |
Restart a container | docker restart <container_name> |
Kill a running container | docker kill <container_name> |
Remove a stopped container | docker rm <container_name> |
Remove all stopped containers | docker container prune |
Container Inspection | |
List running containers | docker ps |
List all containers | docker ps --all |
Fetch logs | docker logs <container_name> |
Follow logs in real-time | docker logs -f <container_name> |
Inspect container details | docker inspect <container_name> |
Check resource usage stats | docker container stats |
Open a shell inside a container | docker exec -it <container_name> sh |
Execute a command in container | docker exec -it <container_name> <command> |
Network Management | |
List networks | docker network ls |
Create a network | docker network create <network_name> |
Inspect a network | docker network inspect <network_name> |
Connect a container to a network | docker network connect <network_name> <container_name> |
Disconnect a container from a network | docker network disconnect <network_name> <container_name> |
Remove a network | docker network rm <network_name> |
Volumes Management | |
List volumes | docker volume ls |
Create a volume | docker volume create <volume_name> |
Inspect a volume | docker volume inspect <volume_name> |
Remove a volume | docker volume rm <volume_name> |
Remove unused volumes | docker volume prune |
Use a volume in a container | docker run -v <volume_name>:<path> <image_name> |
System Cleanup | |
Remove unused objects | docker system prune |
Clean unused volumes | docker volume prune |
Clean unused images | docker image prune |
Clean unused networks | docker network prune |
Miscellaneous | |
Display Docker version | docker --version |
Display system-wide information | docker info |
Login to Docker Hub | docker login |
Logout from Docker Hub | docker logout |
Save an image to a tar file | docker save -o <filename.tar> <image_name> |
Load an image from a tar file | docker load -i <filename.tar> |
Export a container to a tar file | docker export <container_name> > <file.tar> |
Import a tar file as an image | docker import <file.tar> <image_name> |
Pause a container | docker pause <container_name> |
Unpause a container | docker unpause <container_name> |
Rename a container | docker rename <old_name> <new_name> |
View Docker events | docker events |
Git commands
Category | Command |
---|---|
Configuration | |
Set username | git config --global user.name "<User name>" |
Set email | git config --global user.email "xyz123@gmail.com" |
List configuration | git config --list |
Set default editor | git config --global core.editor "<editor>" |
Repository Initialization | |
Initialize repository | git init <Repo Name> |
Clone repository | git clone <remote URL> |
Clone specific branch | git clone -b <branch-name> <git-url> |
Branch Management | |
Create branch | git branch <branch name> |
List branches | git branch -a |
Checkout branch | git checkout <branch name> |
Create and switch to branch | git checkout -b <branch name> |
Delete branch | git branch -d <branch name> |
Force delete branch | git branch -D <branch name> |
Rename branch | git branch -m <old branch name> <new branch name> |
Delete remote branch | git push origin --delete <branch name> |
Staging and Commit | |
Add specific files to stage | git add <filename> <filename> |
Add all changes to stage | git add . |
View status of changes | git status |
Commit staged changes | git commit -m "Commit message" |
Add and commit simultaneously | git commit -am "Commit message" |
Amend last commit | git commit --amend |
Undo staged changes | git reset |
Unstage specific file | git reset <file_name> |
Unstage file but keep changes | git reset HEAD <file_name> |
Undo commit and keep changes | git reset HEAD~1 |
Undo commit and discard changes | git reset --hard HEAD~1 |
Pull and Push | |
Pull latest changes | git pull |
Pull with rebase | git pull --rebase |
Push changes | git push |
Push specific branch | git push origin <branch name> |
Set upstream branch | git push --set-upstream origin <branch name> |
Merge and Revert | |
Merge branches | git merge <branch name> |
Revert a commit | git revert <commit_hash> |
Logs and History | |
View commit history | git log |
View history with stats | git log --stat |
View changes line by line | git blame <filename> |
View changes between commits | git diff <commit1-sha> <commit2-sha> |
View changes in branch comparison | git diff <branch1> <branch2> |
Remote Management | |
View remotes | git remote -v |
Add new remote | git remote add <name> <url> |
Change remote URL | git remote set-url <name> <new-url> |
Remove remote | git remote remove <name> |
Fetch changes | git fetch |
Cleaning and Optimization | |
Remove untracked files | git clean -fd |
Remove untracked files and dirs | git clean -fdx |
Prune remote-tracking branches | git remote prune origin |
Optimize repository | git gc |
Rebase and Cherry-Pick | |
Start rebase | git rebase <branch> |
Abort rebase | git rebase --abort |
Continue rebase after conflict | git rebase --continue |
Cherry-pick a commit | git cherry-pick <commit-hash> |
Tags | |
Create a tag | git tag <tag-name> |
Create annotated tag | git tag -a <tag-name> -m "Tag message" |
Push tags to remote | git push origin <tag-name> |
List tags | git tag |
Delete local tag | git tag -d <tag-name> |
Delete remote tag | git push origin --delete <tag-name> |
Miscellaneous | |
Stash changes | git stash |
View stashes | git stash list |
Apply last stash | git stash apply |
Delete a stash | git stash drop <stash@{index}> |
Create patch | git format-patch <commit-range> |
Apply patch | git apply <patch-file> |
Merge branch | vscode > git clone url git checkout main branch git pull git checkout feature branch git merge main_branch ## if you want to update feature branch with main ## you will get merge conflicts in vscode ## resolve merge conflicts git commit ##check branch name and commit to your feature branch git push feature branch |
Clone other's code and push to your repo | git clone git remote -v git remote set-url origin <add-your-url> git remote -v git push origin |
Kubernetes commands
Category | Command |
---|---|
Minikube Operations | |
Start Minikube | minikube start |
Host Minikube dashboard | minikube dashboard |
Get Minikube dashboard URL | minikube dashboard --url |
Namespace Commands | |
Create a namespace | kubectl create namespace <namespace> |
List all namespaces | kubectl get namespaces |
Switch to a namespace | kubectl config set-context --current --namespace=<namespace> |
Display pods in a namespace | kubectl get pods -n <namespace> |
Delete all pods in a namespace | kubectl delete pods --all -n <namespace> |
Deployment and Apply Commands | |
Create a deployment | kubectl create deployment <deployment-name> --image=<image-name> |
Example | kubectl create deployment nginx-deploy --image=nginx |
Deploy using a YAML file | kubectl apply -f <file.yaml> |
Edit a deployment in VS Code | $env:KUBE_EDITOR="code --wait" > kubectl edit deployment <deployment-name> |
Delete a deployment | kubectl delete deployment <deployment-name> |
Scale a deployment | kubectl scale deployment <deployment-name> --replicas=<number> |
Restart a deployment | kubectl rollout restart deployment <deployment-name> |
Display Resource Information | |
Display nodes | kubectl get nodes |
Display services | kubectl get services |
Display pods | kubectl get pods |
Display deployments | kubectl get deployments |
Display ReplicaSets | kubectl get replicasets |
Display config maps | kubectl get configmaps |
Display storage classes | kubectl get storageclasses |
Display CRDs | kubectl get crds |
Display secrets | kubectl get secrets |
Display Secret Provider class | kubectl get secretproviderclass |
Display events | kubectl get events |
Debug Commands | |
Describe a pod | kubectl describe pod <pod-name> |
Describe a service | kubectl describe service <service-name> |
Describe a config map | kubectl describe configmap <configmap-name> |
Debug pod logs | kubectl logs <pod-name> |
Debug pod logs with namespace | kubectl logs <pod-name> -n <namespace> |
Debug init container logs | kubectl logs <pod-name> -c <init-container-name> |
Debug pod status with wide view | kubectl get pods -o wide |
Interact with a pod | kubectl exec -it <pod-name> -- /bin/bash |
Copy files from a pod | kubectl cp <pod-name>:<path-in-pod> <local-path> |
Port-forward to access a pod | kubectl port-forward <pod-name> <local-port>:<pod-port> |
Apply and Manage Configurations | |
Apply a configuration file | kubectl apply -f <file.yaml> |
Delete resources from a file | kubectl delete -f <file.yaml> |
Check rollout status | kubectl rollout status deployment/<deployment-name> |
Undo a rollout | kubectl rollout undo deployment/<deployment-name> |
Clean-up Commands | |
Delete all pods | kubectl delete pods --all |
Delete all resources in namespace | kubectl delete all --all -n <namespace> |
Delete a resource | kubectl delete <resource-type> <resource-name> |
Force delete a pod | kubectl delete pod <pod-name> --grace-period=0 --force |
Miscellaneous Commands | |
Check cluster info | kubectl cluster-info |
Check current context | kubectl config current-context |
List all contexts | kubectl config get-contexts |
Set a default namespace for a context | kubectl config set-context --current --namespace=<namespace> |
View resource usage | kubectl top nodes |
Monitor pod resource usage | kubectl top pods -n <namespace> |
Helm commands
Execute | Command |
---|---|
Helm repo add bitnami | helm repo add bitnami https://charts.bitnami.com/bitnami |
Helm repo update | helm repo update |
Helm repo list | helm repo list |
Minikube start | minikube start |
Kubectl create namespace | kubectl create ns "namespace" |
Helm install kube-state-metrics | helm install kube-state-metrics bitnami/kube-state-metrics -n metrics |
Helm create chart | helm create "chart-name" |
Helm lint | helm lint . |
Helm template with debug | helm template --dry-run --debug "release-name" . |
Helm install status | helm ls -n "namespace" |
Kubectl get all | kubectl get all -n "namespace" |
Helm install with namespace | helm install demo-001 . -n development |
Helm upgrade | helm upgrade "release-name" . |
Helm upgrade with namespace | helm upgrade demo-001 . -n development |
Helm history | helm history "release-name" |
Helm rollback | helm rollback "release-name" |
Helm rollback with revision | helm rollback "release-name" "revision-number" |
Helm upgrade with specific version | helm upgrade kube-state-metrics bitnami/kube-state-metrics --version 0.4.0 -n metrics |
Helm delete | helm delete "release-name" |
Helm install with updated values | helm install "release-name" --set data.type="9090" |
Kubectl port-forward for kube-state-metrics | kubectl port-forward svc/kube-state-metrics 8080:8080 -n metrics |
Helm show chart | helm show chart bitnami/kube-state-metrics |
Helm show values | helm show values bitnami/kube-state-metrics |
Helm uninstall | helm uninstall "release-name" . -n "namespace" |
Openshift commands
Execute | Command |
---|---|
OpenShift login | oc login |
Create new project | oc new-project <project-name> |
Switch to specific project | oc project <project-name> |
Check the project name | oc project |
Current status of project | oc status |
Display pods | oc get pods |
Describe pod | oc describe pod <pod-name> |
Display logs | oc logs <pod-name> |
Display service of project | oc get svc |
Display specific service of project | oc describe svc <service-name> |
Expose a service to the internet | oc expose svc <service-name> |
Delete a specific service. | oc delete svc <service-name> |
Create new application | oc new-app |
Edit a deployment configuration | oc edit dc <deployment-config> |
Scale a deployment configuration | oc scale dc <deployment-config> --replicas=<number> |
Rollout to latest version of deployment configuration | oc rollout latest <deployment-config> |
Terraform
Category | Command |
---|---|
General Commands | |
Terraform version | terraform --version |
Terraform help | terraform --help |
Formatting Commands | |
Format files | terraform fmt |
Format files recursively | terraform fmt --recursive |
Show format changes | terraform fmt --diff |
Check formatting | terraform fmt --check |
Initialization Commands | |
Initialize project | terraform init |
Initialize without plugins | terraform init -get-plugins=false |
Initialize without state lock | terraform init -lock=false |
Migrate state to backend | terraform init -migrate-state |
Reconfigure backend | terraform init -reconfigure |
Upgrade modules and providers | terraform init -upgrade |
Module Commands | |
Download modules | terraform get |
Update modules | terraform get -update |
Validation Commands | |
Validate configuration | terraform validate |
Validate in JSON format | terraform validate -json |
Planning Commands | |
Generate execution plan | terraform plan |
Save execution plan to file | terraform plan -out=<path> |
Plan for destruction | terraform plan -destroy |
Plan with variables | terraform plan -var="key=value" |
Plan with variable file | terraform plan -var-file="filename.tfvars" |
Plan with refresh disabled | terraform plan -refresh=false |
Apply Commands | |
Apply changes | terraform apply |
Auto-approve apply | terraform apply --auto-approve |
Apply with variables | terraform apply -var="key=value" |
Apply with variable file | terraform apply -var-file="filename.tfvars" |
Apply a saved plan | terraform apply <plan file> |
Destruction Commands | |
Destroy resources | terraform destroy |
Auto-approve destroy | terraform destroy --auto-approve |
Destroy with variables | terraform destroy -var="key=value" |
Destroy with variable file | terraform destroy -var-file="filename.tfvars" |
State Management Commands | |
Display state | terraform show |
Display state file | terraform show <statefile> |
Refresh state | terraform refresh |
List resources in state | terraform state list |
Push state to backend | terraform state push |
Remove resource from state | terraform state rm <resource> |
Move resource in state | terraform state mv <src> <dest> |
Lock state | terraform force-unlock <lock ID> |
Import resource to state | terraform import <address> <resource ID> |
Show resource state details | terraform state show <resource> |
Resource Lifecycle Commands | |
Force resource recreation | terraform taint <resource> |
Remove taint from resource | terraform untaint <resource> |
Provider Commands | |
List providers | terraform providers |
Workspace Commands | |
List workspaces | terraform workspace list |
Show current workspace | terraform workspace show |
Create a new workspace | terraform workspace new <workspace> |
Delete a workspace | terraform workspace delete <workspace> |
Select a workspace | terraform workspace select <workspace> |
Debugging Commands | |
Debug a command | terraform -debug <command> |
Show logs | TF_LOG=<level> terraform <command> |
Enable detailed logs | TF_LOG=TRACE terraform <command> |
Miscellaneous Commands | |
Create graph of resources | terraform graph |
Generate graph to file | terraform graph \ dot -Tpng > graph.png |
Output resource values | terraform output |
Output specific value | terraform output <output name> |
Suppress colored output | terraform <command> -no-color |
Show available providers | terraform providers schema |