Giter VIP home page Giter VIP logo

gtcdk8s's Introduction

Effective Containerisation From Development To Production

Courseware for a Docker & Kubernetes workshop.

Synopsis

Developer-onboarding taking ages because of required supporting services? Having issues with "but it works on my machine"-like complaints? Searching for a way to deploy your application reliably and in an automated manner? Sounds like you could do with some container technology!

Enter the world of containerisation in both development and production environments with this short workshop which will cover building container-based deployments friendly applications, containerising services effectively, and deploying them - all with good ol' shell scripting automation for good taste.

You can find the slides for this workshop at the bit.ly url, http://bit.ly/gtcdk8s.
The canonical workshop material is here at http://github.com/zephinzer/gtcdk8s.
A prettified version using Jekyll is here at http://gtcdk8s.joeir.net.

Target Audience

This is a hands-on workshop with the most utility for software engineers looking into the art of DevOps or seeking to learn how container technologies can result in developer happiness.

Topics

  1. Cloud Native Applications
  2. Application Containerisation
  3. Environment Provisioning
  4. Deploying Containers in Production

Workshop Objectives

Objective Details
Understand what goes into being cloud native Understanding the need for health checks, centralised logging and distributed tracing
Creating a container image with Docker Understand concepts in container images such as system encapsulation, image layering, and quick-win best practices of writing image files
Orchestrating multiple container images with Docker Understand challenges in orchestrating images and provisioning of an environment
Running a local Kubernetes Learn what is and how to use MiniKube
Deploying with Kubernetes Learn common Kubernetes resources and manifests

Requirements

Required Skills

Workshop participants should:

  1. Be comfortable working with the command line
  2. Have experience with software engineering
  3. Have a little experience with deployment and operations

Other roles are welcome too, but you might not get the most out of this!

Required Machine

  1. Do note that Windows is strictly not supported due to limitations in time.
  2. This workshop will only support MacOS (get a Mac on Carousell).
  3. Use Linux at your own risk (it works, with enough effort).
  4. Virtual machine setups will not work for section 4 of this workshop due to MiniKube itself being run in a VM.

Required Software

IMPORTANT Follow the instructions at THIS PAGE ON SETTING UP to get your machine ready for the workshop. This will take roughly an hour at most.

You will need the following software installed before the workshop starts:

  1. VirtualBox
  2. Docker Engine (with Docker Compose)
  3. kubectl
  4. MiniKube
  5. Node

Required Resources

You should have cloned this repository into your local machine before the workshop begins. The instructions are in the setup page.

As conference WiFi can be flaky, please also download a copy of all resources being used:

  1. Docker images

About The Facilitator

Joseph is a DevOps engineer hailing from the Agile Consulting & Engineering tribe at Government Digital Services. He spends his day optimising and maintaining CI/CD pipelines and making the codebase easier to work with for developers.

He enjoys evangelising on Agile and deployment-related affairs in software engineering, and thinks the world would be a better place if more developers understood DevOps and made it a culture instead of a role.

Check out his articles at https://medium.com/@joeir and his (wasteland of) projects at https://github.com/zephinzer.

Licensing

Code in this repository is licensed under the MIT license as per the LICENSE file.

Content in this repository is licensed under the Creative Commons Attribution-ShareAlike 3.0 Singapore license.

Creative Commons Licence

gtcdk8s's People

Contributors

zephinzer avatar

Stargazers

Andrian K avatar GAURAV avatar Songwei Kong avatar Salihan avatar  avatar Vincent Lau avatar Niladri avatar Rahul avatar KC avatar Vincent Nguyen avatar Indroneel Mukherjee avatar Stacy Goh avatar Samuel Loh Yin Kang avatar  avatar

Watchers

James Cloos avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.