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 OpenWhisk?


Donated to the Apache foundation, OpenWhisk is a robust FaaS platform originally developed by IBM and Adobe. Built atop Docker container technologies, OpenWhisk can be deployed in the cloud or on on-premises hardware. It is a platform that frees developers from worrying about managing the life cycle of their code or operations of the container runtimes that execute the code. OpenWhisk is designed to be scalable and to support massive numbers of function invocations. Currently, OpenWhisk is the engine behind IBM Cloud Functions.

The OpenWhisk scaling mechanism is not built on top of Docker Swarm or Kubernetes schedulers. It plugs directly into each Docker instance to start and scale function containers. With this design, OpenWhisk fits better with the plain Docker infrastructure than Kubernetes.

For developers, OpenWhisk provides a number of compelling features via its high-level programming model surrounding functions. Its event triggering mechanism is shown in Figure 6...