Skip to content

Instantly share code, notes, and snippets.

@dahlsailrunner
Last active August 13, 2024 10:48
Show Gist options
  • Save dahlsailrunner/1a47b0e38f6e3ba64d4d61835c73b7e2 to your computer and use it in GitHub Desktop.
Save dahlsailrunner/1a47b0e38f6e3ba64d4d61835c73b7e2 to your computer and use it in GitHub Desktop.
Helpful tips and snippets for Kubernetes within Docker Desktop

Using the K8s Dashboard Locally

Actual repo is here: https://github.com/kubernetes/dashboard

1. Install the Dashboard

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.4.0/aio/deploy/recommended.yaml

2. Create a Sample User Account that can Access the Dashboard via Token

kubectl apply -f https://gist.githubusercontent.com/dahlsailrunner/bbd453f3bb6259b66c08a70d0908283f/raw/5727723217e2df4b65d8933adf04d009cfb0fe3f/local-dashboard-account.yml

3. Grab the Token for the Sample User

It's the token value from the output of the below command.

Powershell:

kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | sls admin-user | ForEach-Object { $_ -Split '\s+' } | Select -First 1)

TIP: Create a PowerShell function in your $PROFILE (like Get-K8s-Dashboard-Token) to make this easier to remember / perform.

Bash:

kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')

4. Enable Access to the Dashboard Service

start kubectl proxy

5. Explore the Dashboard

Link is here: http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

Use the token you found in step 3 to login.

Install the Community nginx Ingress Controller

kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.43.0/deploy/static/provider/cloud/deploy.yaml
@dahlsailrunner
Copy link
Author

Thanks for the note! You can also use Lens (https://k8slens.dev) as a way to visually navigate kubernetes resources, and that's easier than these steps (also allows more than one k8s cluster). The downside is that it's a local install.

@johscott
Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment