This is a simple Go server that listens on port 3000 and responds with "hello I'm vulnerable!". It is packaged in a Docker container and deployed to a Kubernetes cluster using the provided deploy.yaml
.
- A minimal Go web server listening on port 3000.
- Deployed as a Kubernetes Deployment and exposed via a LoadBalancer service.
- Docker
- Kubernetes cluster (Minikube, GKE, EKS, AKS, etc.)
kubectl
installed and configured to connect to your Kubernetes cluster.
Make sure you have Docker installed. Build the image with the following command:
docker build -t lkup77/test_vuln_go:1 .
After building the image, push it to Docker Hub or your preferred container registry:
docker push lkup77/test_vuln_go:1
Deploy the app using the provided deploy.yaml
file. Make sure kubectl
is configured to connect to your Kubernetes cluster.
kubectl apply -f deploy.yaml
This will create:
- A
Namespace
namedgo-app-lk
. - A
Deployment
with your Go app running in a pod. - A
Service
of typeLoadBalancer
that exposes port 3000 of the app.
To get the external IP address of the service, run:
kubectl get services -n go-app-lk
Once the external IP is available, access the application by visiting:
http://<EXTERNAL-IP>:3000
You should see the message:
hello I'm vulnerable!
To delete the deployment, service, and namespace, run:
kubectl delete namespace go-app-lk
This project is open-source and available under the MIT License.