3.6 out of 5
63 reviews on Udemy

Getting started with Cloud Native Go

Deep dive into Implementation of Go microservices and learn how to containerize them through Docker and Kubernetes
Packt Publishing
612 students enrolled
English [Auto-generated]
Implement the REST API with Go’s standard library
Learn how to Containerize Go microservices using Docker and Kubernetes
Implement Deployment and Service descriptors
Run Docker images locally
Understand the basic Docker workflow and basic Docker commands
See a simple Go microservice implementation
Find out how to successfully implement Go microservice frameworks

Microservices in Go teaches you how to handle advanced server side development in Go; it uses microservices to accomplish this, but is relevant to all server-side developers.

This course is your one-stop guide to learn all about building cloud-native architectures in Go. We begin by introducing you to the cloud native stack and microservices, then move on to implementing a simple Go microservice. This includes implementing the REST API with Go’s standard library. Finally, we look at the Containerization and Orchestration of Go micro services using Docker and Kubernetes by showing you how to deploy Kubernetes and scale deployment.

About the Author

Mario-Leander Reimer has been a chief technician at QAware since the beginning of 2014. He is responsible for the technical success of projects in the field of after sales for their customer BMW.

He is a specialist in the design and implementation of complex system and software architectures based on open source technologies. As a member of the Java Community Process (JCP), his goal is to further improve the Java platform and to develop practical specifications. He is a speaker at international conferences and guest lecturer at Rosenheim University of Applied Sciences.

Mario-Leander studied computer science in Rosenheim and at Staffordshire University.

Introduction to Cloud Native Apps and Microservices

The Course Overview

This video gives an overview of the entire course.

Motivation for Cloud Native Apps
The aim of the video is to introduce the motivation and key concepts of cloud native applications.
Challenges and Design Principles
Cloud native applications have additional challenges compared to traditional monolithic applications. This video aims to discuss the design principles that should be taken into account when developing these kind of applications.
Decomposition with Microservices

This video introduces the new concept and anatomy of ops components and discusses the decomposition trade-offs associated with microservices.

Introduction to the Cloud Native Stack

The development of cloud native applications brings along several challenges and complexities that need to be addressed. This videos introduces the Cloud native stack with its anatomy and key technologies to meet those challenges and presents the stack used throughout this course.

Simple Go Microservices

Simple Go HTTP Server Implementation

Every microservice needs an HTTP server to serve its API. The aim of this video is to show how this can be achieved with plain Go and standard packages only.

JSON Marshalling/Unmarshalling of Go Structs

JSON is the de facto standard data transfer format for microservices and REST APIs. The aim of this video is to demonstrate how Go structs are marshalled and unmarshalled and how the JSON format can be customized using tags.

Simple REST API Implementation

The aim of this video is to show how to leverage HTTP verbs, status codes, and URIs to implement a REST API that offers basic CRUD functionality.

Introduction to Docker and Go Microservice Containerization

Basic Docker Workflow and Docker Commands

Docker is a virtualization technology that operates at the OS level.Cloud native applications are packaged, distributed, and run as containers. The aim of this video is to teach the Docker basics required throughout this section.

Build Naïve Docker Image for Go Microservice

Cloud native applications are packaged, distributed, and run in containers. Docker is a key container technology. This video shows how a Docker image for a Go microservice is built and distributed.

Running Containerized Go Microservice Locally

Cloud native applications are packaged, distributed, and run in containers. Docker is a key container technology. This video shows how a Docker containers for a Go microservicecan be run locally. It also shows how ENV variables, port mappings, and resource constraints can be specified.

Improved Docker Image and Docker Compose

Cloud native applications are packaged, distributed, and run in containers. Docker is a key container technology. This video shows how an improved Docker image can be built and how Docker Compose can be used to build and run the image in combination with other services.

Introduction to Kubernetes and Go Microservice Orchestration

Overview of Kubernetes Architecture and Main Concepts

Kubernetes is a cluster operating system used to run cloud native applications and microservices. The aim of this video is to give the audience a rough understanding of Kubernetes with its key concepts that are required this section.

Deploy a Go Microservice to Kubernetes Locally

In order to run a Docker container in Kubernetes we need to define a Pod. The aim of this video is to show how deploy and run a containerized Go microservice using Minikube on a local developer machine.

Implement Deployment and Service Descriptors

Kubernetes provides several high level abstractions to manage and access containerized applications: deployments and services. The aim of this video is to demonstrate how these abstractions can be declared and used in Kubernetes to run a small Go microservice.

Scale Deployments and Perform Rolling Updates

Kubernetes is a sophisticated cluster operating system that supports many ops tasks out of the box. Theaim of this video is to show how Kubernetes deployments can be scaled horizontally and how rolling updates can be performed easily.

You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
3.6 out of 5
63 Ratings

Detailed Rating

Stars 5
Stars 4
Stars 3
Stars 2
Stars 1
30-Day Money-Back Guarantee


2 hours on-demand video
Full lifetime access
Access on mobile and TV
Certificate of Completion