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

User interface


There is no open source portal for OpenWhisk at the time of writing. To make it easier for developers to use OpenWhisk, I'm developing a UI portal for it. SuraWhisk is an open source project hosted on GitHub. Its source can be found at https://github.com/surawhisk/ui. If you do not want to look at the source code, you can just start the UI from a ready-to-use Docker image.

First, create a volume to store the settings data. Endpoints and their API keys for authentication will be stored there in the volume:

$ docker volume create surawhisk_vol

Then the UI can be run using the following command:

$ docker run -d -p 8080:8080 -v surawhisk_vol:/root/data surawhisk/ui

After SuraWhisk UI starts, point the browser to http://localhost:8080. The UI's navigation bar on the left-hand side currently contains three basic items: settings, actions, and namespaces.

The Settings page, as shown in Figure 6.3, is for setting up an OpenWhisk endpoint and its API key. The SuraWhisk container is running...