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

Azure Functions


Azure Functions is a serverless computing platform offered by Microsoft as a part of Azure Cloud. All design goals are the same as other serverless/FaaS services, and Azure Functions enables us to execute our application logic without managing our own infrastructure.

Azure Functions runs a program in the form of scripts when it is triggered by events. The current version of Azure Functions supports language runtimes such as C#, F#, PHP, Node.js or Java. It is natural for Azure to support C# and F# as first-class languages for their functions because they are Microsoft-owned programming languages. In any case, the only GA-supported languages are C#, F#, and JavaScript (Node.js) anyway.

With C#, F#, or .NET languages, Azure Functions allows us to install dependencies via NuGet, the infamous package manager for .NET. In case we are writing JavaScript with Node.js, Azure also provides access to NPM for package management.

Similar to other cloud providers, Azure Functions has an...