If everything is configured properly, you’ll see confirmation that both the Deployment and the Service were created:
```shell
deployment.apps/angular-sample created
service/angular-sample-service created
```
This confirms that both the Deployment and the Service were successfully created and are now running inside your local cluster.
### Step 2. Check the Deployment status
Run the following command to check the status of your deployment:
```console
$ kubectl get deployments
```
You should see output similar to the following:
```shell
NAME READY UP-TO-DATE AVAILABLE AGE
angular-sample 1/1 1 1 14s
```
This confirms that your pod is up and running with one replica available.
### Step 3. Verify the Service exposure
Check if the NodePort service is exposing your app to your local machine:
```console
$ kubectl get services
```
You should see something like:
```shell
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
angular-sample-service NodePort 10.100.185.105 <none> 8080:30001/TCP 1m
```
This output confirms that your app is available via NodePort on port 30001.
### Step 4. Access your app in the browser
Open your browser and navigate to [http://localhost:30001](http://localhost:30001).
You should see your production-ready Angular Sample application running — served by your local Kubernetes cluster.
### Step 5. Clean up Kubernetes resources
Once you're done testing, you can delete the deployment and service using:
```console
$ kubectl delete -f angular-sample-kubernetes.yaml
```
Expected output:
```shell
deployment.apps "angular-sample" deleted
service "angular-sample-service" deleted
```
This ensures your cluster stays clean and ready for the next deployment.
---
## Summary
In this section, you learned how to deploy your Angular application to a local Kubernetes cluster using Docker Desktop. This setup allows you to test and debug your containerized app in a production-like environment before deploying it to the cloud.
What you accomplished:
- Created a Kubernetes Deployment and NodePort Service for your Angular app
- Used `kubectl apply` to deploy the application locally
- Verified the app was running and accessible at `http://localhost:30001`
- Cleaned up your Kubernetes resources after testing
---
## Related resources
Explore official references and best practices to sharpen your Kubernetes deployment workflow:
- [Kubernetes documentation](https://kubernetes.io/docs/home/) – Learn about core concepts, workloads, services, and more.
- [Deploy on Kubernetes with Docker Desktop](/manuals/desktop/features/kubernetes.md) – Use Docker Desktop’s built-in Kubernetes support for local testing and development.
- [`kubectl` CLI reference](https://kubernetes.io/docs/reference/kubectl/) – Manage Kubernetes clusters from the command line.
- [Kubernetes Deployment resource](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/) – Understand how to manage and scale applications using Deployments.
- [Kubernetes Service resource](https://kubernetes.io/docs/concepts/services-networking/service/) – Learn how to expose your application to internal and external traffic.