diff --git a/contributions/executable-tutorial/tljun-lindefor/README.md b/contributions/executable-tutorial/tljun-lindefor/README.md new file mode 100644 index 000000000..23f8bf0f3 --- /dev/null +++ b/contributions/executable-tutorial/tljun-lindefor/README.md @@ -0,0 +1,26 @@ +# Assignment Proposal + +## Title + +Working with Kubernetes and Docker to deploy and scale a web application + +## Names and KTH ID + +- Tobias Ljunggren (tljun@kth.se) +- Martin Lindefors (lindefor@kth.se) + +## Deadline + +- Task 2 + +## Category + +- executable-tutorial + +## Description + +This tutorial provides a guide to building, containerizing, and deploying a Node.js application using Docker and Kubernetes on a single local system. Participants will start by creating a small Node.js application. They will then learn how to create a Dockerfile to containerize the application and run it locally to verify functionality. The tutorial continues with setting up a local Kubernetes cluster using Minikube. Participants will deploy the Docker container to Kubernetes, expose it via a Service, and scale the application by increasing the number of replicas. Moving on to more advanced features, the tutorial will demonstrate how to implement role-based access control (RBAC) within the Kubernetes environment. This is to show how you can manage permissions and ensure that different users and services have the appropriate level of access to resources. The tutorial will contain how to set up RBAC policies, create roles and role bindings, and assign them to users and service accounts. The tutorial will also use the Kubernetes secrets functionality. + +**Relevance** + +This tutorial is relevant to DevOps since it teaches important skills in containerization and orchestration using Docker and Kubernetes. By learning how to build, deploy, and scale applications in a consistent and automated way, tutorial participants will be more prepared to work in complex application environments. Furthermore, Docker is a DevOps tool that everyone should be familiar with, and Kubernetes is required for scaling up a growing application.