In Serverless for Everyone Else, you'll learn practical use-cases for Serverless Functions, how to build and deploy your own functions that you can run anywhere at a low, predictable cost.
Once you have the basics under your belt, you'll learn how to do more advanced tasks like scheduled tasks, running functions in the background, CI/CD, and adding a database to your host.
You can run everything on your laptop using a VM, in the cloud using a 5 USD / mo DigitalOcean Droplet, or even a Raspberry Pi.
Almost all the examples are compatible with OpenFaaS on Kubernetes or K3s from building functions in Node.js, to setting up multi-arch CI/CD with GitHub Actions.
Functions can help you extend an existing product or system, by writing code that is triggered by events. You can then automate all kinds of internal systems, marketing, sales, social media and more.
You'll learn how to deploy code in any language, lift and shift Dockerfiles, run requests in queues, write background jobs and to integrate with databases. faasd packages the same code as OpenFaaS, so you get built-in metrics for your HTTP endpoints, a user-friendly CLI, pre-packaged functions and templates from the store and a UI
"OpenFaaS is my favourite serverless framework as it integrates seamlessly into your workflow and faasd is the simplest way of starting to use it. This book really opens your eyes up to the things you can achieve with it for almost no overhead." - Simon Emms
Getting started and building functions:
- How to use the book
- Should you deploy to a VPS or Raspberry Pi?
- When should you use faasd over OpenFaaS on Kubernetes?
- What is included in the faasd stack?
- Deploying your server with bash, cloud-init or terraform
- Exploring your faasd instance through the REST API, CLI and UI
- Using a private container registry
- Finding functions in the store
- Building your first function with Node.js
- Using environment variables for configuration
- Using secrets from functions, and enabling authentication tokens
- Using Postgresql and databases from functions
Monitoring and operations:
- Understanding how function templates work and how to customise them
- Monitoring your functions with Grafana and Prometheus
- Scheduling invocations and background jobs
- Tuning timeouts, parallelism, running tasks in the background
- Adding TLS to faasd and custom domains for functions
- Getting remote access to self-hosted faasd with inlets
- Adding a database for storage with InfluxDB, Postgresql and Redis
- Exploring faasd resource consumption
- Troubleshooting faasd, functions and getting logs
- Upgrading and updating faasd
- Multi-arch CI/CD with GitHub Actions
- Taking things further, community resources and case-studies
- Options for scaling up with faasd, or OpenFaaS on Kubernetes.
You can see the full table of contents by clicking the image preview carousel.
"Do you need to try Serverless functions but you simply do not want to lose time with the "hosting technicalities"? Then faasd is definitively for you and how best to understand it if not by its creator directly" - Nuno do Carmo
Watch and learn with the 50min video workshop
In the workshop I walk through deploying faasd, using the OpenFaaS UI, CLI, Function and Template store, and then go on to show you how to build the first few examples using Node.js. At the end I'll give you a few more ideas for use-cases and show you how to monitor rate of execution, duration and errors in your functions with Grafana.
What people are saying about the video workshop
"Congrats Alex, Very good hands-on video as the perfect complement to your book! I really like the use cases approach and the related deployment option strategy" - Philippe Ensarguet, Group CTO, Orange Business Services
"Very slick, Alex! The green screen helps keep a personal touch. I hadn't heard of multipass. Thank you. From a continuing learning perspective, this helps me professionally to (1) know what's out there and (2) see it in action." - Kyle Brennan
The workshop is available in the Learner and Team Player tiers.
We're a community:
This is the perfect way to learn about containers and functions over a long weekend.
Even if you've never written code before, you will be able to copy and paste the examples and see how each part works. The main examples are written in Node.js, but the concepts carry over and you can also write in many other languages like Python, C#, Golang and bash.
Where's my upgrade?
If you purchased a qualifying tier during an offer, and haven't received your upgrade email, then check your spam and junk folder.
Got a question or comment? Send me an email: email@example.com
Please leave a rating for the book after purchase. If you're not completely satisfied with the eBook, then email me within 7 days to request a no hassle refund.
Discounts & offers
Want a 20% discount? Sign up to my Insiders' Portal via GitHub Sponsors and get a 20% discount off all my eBooks
You may also like
In Everyday Go - you'll learn examples, patterns and techniques that will fast track your Go knowledge and capabilities.
In my Netbooting workshop for Raspberry Pi with K3s - you'll learn how to build a private cloud with Raspberry Pi and Kubernetes
64-page PDF and ePub:
You'll get the 64-page PDF and the ePub version today, with everything listed above with regular updates included on every tier for free.
What people are saying
"Only been playing with it for a day now, but really amazing bit of kit...makes me wonder why not everyone is talking about it. It is to faas, as sqlite is to MySQL . You get 90% of the power, at 0.5% of the overhead" - Nic Grobler
"Once you have deployed faasd, it's one command to push your function into production. From there it's up to you what you like to build. It builds the container, publishes, and deploys your function code ready-to-use in seconds." - Peter Thaleikis
"Some of my functions are literally quick and dirty hacks that just work and drive value. I can rewrite/optimise later but surprisingly dockerfile or bash template have most of the power I need" - Tomasz Miklas
"After collecting too much dust my Raspberry Pi has found it’s purpose as a “Function-as-a-service” Box (like AWS Lambda), all with open source software by Alex Ellis with faasd for the FaaS and inlets for Ingress." - Chris Dietrich
"Finally got around fixing should-i-watch-this.com. Ditched my fully fledged k8s cluster (which was overly expensive) in favor of a simple faasd droplet for my openfaas backend. thanks Alex, works nicely!" - Alexis Reigel
"Alex, I just received the book and I really appreciate your effort to make faasd easy to understand." - Mohammad Sadegh Aslanpour
"I took a look at the eBook and found some real jewels in there that I had not encountered in the docs" - Kevin McWhirter
"Tonight I built an openfaas function with Python Flask that connects SMS with Twilio to Slack for bidirectional chat. It’s running on faasd that was deployed to a $5/month droplet via Terraform. This is just cool!" @technicalissues
"We’re currently migrating our bloated Kubernetes solution to faasd as i type Alex - it’s just what we need . Thank you" - Richard Hill
"In Serverless for Everyone Else, you'll learn practical use-cases for Serverless Functions, how to build and deploy your own functions that you can run anywhere at a low, predictable cost." - Cloud Native Islamabad
"A great starting point for those who didn't get into this world yet, totally worth a read." - Pato Diaz
"Thank you very much! I am really enjoying learning about OpenFaaS and the whole concept of FaaS. I can’t wait for the work day to end and the kids to be in bed so I can continue working through" - Andre Jacobs
"Finally someone writes a #serverless book I might understand, with some real world stuff I might be able to accomplish. Of course it would be Alex Ellis" - Joe Onisick
I have a copy, and it is exactly what Alex says. Really good book, I would recommend it to anyone interested in working with serverless and openfaas." - Tek Raj Chhetri
"I got Serverless for Everyone Else by Alex Ellis and I suggest everyone to get it :)" - Amit Chaudhry
"Amazing stuff. Making it so easy." - Thomas Connors
Serverless for everyone else