Docker and Kubernetes for Software Developers

So you need to build a cloud native application but don't know where to start? You now need to containerize and deploy to Kubernetes but don't know where to get started? This workshop is for you. In this full-day workshop, the attendees will start with a code base still in development mode and slowly break it down in pieces. They will learn how to package those pieces in containers. And finally, they will learn how to deploy them in a Kubernetes cluster. This workshop is a mix of hands-on and theory. By the end of the day, the participants will understand how to use containers and how to deploy them in Kubernetes.

  • Apr 14
    Online
    1 day
    13:00 - 21:00 UTC
    225 USD

Target Audience:
JavaScript “full-stack” software developers who need to learn how to deploy to Kubernetes and are not yet familiar with containerization technology.

Introduction
* Install required tooling
* Clone code repository
* Explore code base
Introduction to containers
* What are containers
* Adding a containerized database to our application
* Environment variables
* Edit application to connect to the DB
* Mount volumes
Containerization
* Create Dockerfile and build a container for the back end
* Create a container for the container image
* Use bash scripts to tweak front-end deployment
Docker-compose (if time permits)
* Create a docker-compose setup
Introduction to Kubernetes
* What is kubernetes
* Connect to a cluster
Basic Primitives
* Pods
* Deployment
* Service
Deploy the front-end
* Write a deployment and service
* Expose routes via ingresses
Deploy the back-end
* Write the deployment and service
* Edit the ingress to expose the backend
* Update environment variables
* Deploy the database
* Create the deployment, service and configmap
* Update the back-end deployment to connect to the DB
* Introduce PVs and PVCs
* Persist data on Kubernetes
Health probes
* Add health probes to back-end
Break down the back-end in microservices
* Extract CPU intensive parts
* Create new containerized micro-service
* Deploy new service and reconnect to back-end
* Create a shared PVC
Pipelines and CI/CD (if time permits)
* Introduction to Tekton
* Create Tasks, Pipelines and Resources
* Deploy application with a Tekton Pipeline

Prerequisites:
* The code base that will be used is in Node.js so the [Node.js](https://nodejs.org) is nice to have but not a must

The following tools need to be pre-installed:
* [Git](http://git-scm.com/)
* [Docker](https://docker.com)
* [Minikube](https://kubernetes.io/docs/tasks/tools/install-minikube/)
* [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/)

Joel Lord
Developer Advocate at Red Hat OpenShift

Joel Lord is passionate about web and technology in general. He likes to learn new things but most of all, he likes to share his discoveries. He does so by travelling at various conferences all across the globe.
He graduated from college in computer programming in the last millennium. Apart for a little break to get his BSc in computational astrophysics, he was always in the industry.
As a developer advocate with Red Hat OpenShift, he meets with developers to help them make the web a better place.
During his free time, he is usually found stargazing in a camping site somewhere or brewing a batch of beer in his garage.

    NDC Conferences uses cookies to see how you use our website. We also have embeds from YouTube and Vimeo. How do you feel about that?