# Deployments with kubectl
> https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/
- command format: `kubectl <action> <resource>`
- config: `kubectl version`
- get nodes `kubectl get nodes`
- deploy app: `kubectl create deployment`
- find node for app to run
- schedule app to run on node
- config cluster to reschedule isntance on a new node when needed
- list deployments: `kubectl get deployments`
- pods run in private, isolated network
- visible to other services in same k8s cluster but not externally by default
- `kubectl proxy` forwards communications into cluster's private network
- on localhost
- ex.) `curl http://localhost:8001/api/v1/namespaces/default/pods/$POD_NAME:8080/proxy/`
# Viewing pods and nodes
https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/
- `kubectl get` - list resources
- `kubectl describe` - show detailed information about a resource
- `kubectl logs` - print the logs from a container in a pod
- `kubectl exec` - execute a command on a container in a pod
- `kubectl exec "$POD_NAME" -- env`
- `kubectl exec -ti $POD_NAME -- bash`