Skip to content

Commit db1b10c

Browse files
wip: updated the header of readme.md
1 parent 73d01bb commit db1b10c

File tree

1 file changed

+17
-7
lines changed

1 file changed

+17
-7
lines changed

Readme.md

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,13 @@
1+
<div align="center">
2+
<p align="center">
3+
<img width="960" height="309" alt="final-k8s" src="https://github.com/user-attachments/assets/e5ef535e-a07a-4cd5-9fbd-926a0c62cf39" />
4+
</p>
5+
</div>
6+
7+
[![Watch the demo video](https://github.com/user-attachments/assets/4ba51960-d9d2-4ac4-9272-c4ee3c5cf262)](https://www.youtube.com/watch?v=mAr62XBVbmg)
8+
> 📽️ Click the image above to watch the full 25-minute walkthrough on YouTube.
9+
> It includes setup, explanation, CVE scan demo, and auto resource creation.
10+
111
# 🛡️ Kubernetes CVE Scanner with Custom Controller + Admission Webhook
212

313
This project includes a **Kubernetes custom controller** that:
@@ -13,7 +23,6 @@ This project includes a **Kubernetes custom controller** that:
1323

1424
Make sure you have a running Kubernetes cluster (like KinD, Minikube, or EKS).
1525

16-
---
1726

1827
### 2️⃣ Install `cert-manager`
1928

@@ -28,6 +37,7 @@ kubectl apply -f docs/trivy-manifest/deployment.yml
2837
kubectl apply -f docs/trivy-manifest/service.yml
2938
```
3039
Trivy will act as the backend scanner for your webhook.
40+
> Note: We are running using trivy client you can see the command [here](https://github.com/aquasecurity/trivy/discussions/2119)
3141
3242
### 4️⃣ Create Cluster Role & Bindings
3343
* Grant required permissions for:
@@ -49,24 +59,24 @@ kubectl apply -f manifest/cluster-permission.yaml
4959
- TLS Issuers + Certs
5060
- ValidatingWebhookConfiguration
5161

52-
```bash
62+
```ts
5363
kubectl apply -f manifest/k8s-controller-webhook.yaml
5464
```
5565
### 6️⃣ Test Webhook
56-
```bash
66+
```ts
5767
# contain cve
58-
kubectl apply -f manifest/webhook-example/initContainerDeployment.yml
68+
$ kubectl apply -f manifest/webhook-example/initContainerDeployment.yml
5969
# look for first time it might fail (look at the logs of the application (k8s-custom-controller) and
6070
# see if they return a long list of CVE -> then start creating again (Working on to optimize)
6171

6272
# pure zero cve (does not contain cve)
63-
kubectl apply -f manifest/webhook-example/pureZeroCVE.yml
73+
$ kubectl apply -f manifest/webhook-example/pureZeroCVE.yml
6474

6575
# contain cve but bypass (i mean create the deployment even after having CVE)
6676
# due to this parameter `name: BYPASS_CVE_DENIED` set as yes or true
67-
kubectl apply -f manifest/webhook-example/ZeroInitCVE.yml
77+
$ kubectl apply -f manifest/webhook-example/ZeroInitCVE.yml
6878
```
6979
### Todo:
7080
- Better docs and guide
7181
72-
Happy Scan-ing!
82+
Happy Scan-ing!

0 commit comments

Comments
 (0)