Book Image

Docker for Serverless Applications

By : Chanwit Kaewkasi
Book Image

Docker for Serverless Applications

By: Chanwit Kaewkasi

Overview of this book

Serverless applications have gained a lot of popularity among developers and are currently the buzzwords in the tech market. Docker and serverless are two terms that go hand-in-hand. This book will start by explaining serverless and Function-as-a-Service (FaaS) concepts, and why they are important. Then, it will introduce the concepts of containerization and how Docker fits into the Serverless ideology. It will explore the architectures and components of three major Docker-based FaaS platforms, how to deploy and how to use their CLI. Then, this book will discuss how to set up and operate a production-grade Docker cluster. We will cover all concepts of FaaS frameworks with practical use cases, followed by deploying and orchestrating these serverless systems using Docker. Finally, we will also explore advanced topics and prototypes for FaaS architectures in the last chapter. By the end of this book, you will be in a position to build and deploy your own FaaS platform using Docker.
Table of Contents (15 chapters)
Title Page
Packt Upsell
Contributors
Preface
Index

What is Docker?


Containers in the past were quite difficult to manage and use. Docker is basically a set of technologies to help us prepare, manage, and execute containers. In the world of virtual machines, we need a hypervisor to take care of all VM instances. Similarly, in the world of containers, we use Docker as the container engine to take care of everything to do with containers.

Undeniably, Docker is the most popular container engine to date. When using Docker, we follow the three concepts build, ship, and run, recommended by Docker itself:

  • The workflow of Build-Ship-Run is optimized by the philosophy of Docker. In the Build step, we are allowed to build and destroy container images rapidly. As developers, we can include the container building steps as a part of our development cycle.
  • In the Ship step, we ship container images to places, from our development laptops to the QA servers and to the staging servers. We send the container images to be stored in the public hub or to our private...