Serverless for Everyone Else
Subtitle: Automate your workflow
Publisher: Alex Ellis
Published: 2021
Language: eng
Format: ebook
Number of pages: 82
Copyright date: 2021
First sentence: I wrote “Serverless for Everyone Else” after developing the faasd project, which is a light-weight and open-source framework for building and hosting serverless functions wherever you like.
Table of contents: label: 1 Introduction
title: 3; label: About the book
title: 4; label: Changelog
title: 5; label: 2 Deploy your server
title: 6; label: Why do you need a server?
title: 6; label: When should you use faasd over OpenFaaS on Kubernetes?
title: 6; label: The PLONK Stack and OpenFaaS Core Services
title: 6; label: Self-hosted or cloud?
title: 7; label: A quick note before we begin
title: 8; label: Install faasd with Bash
title: 8; label: Install faasd with cloud-init
title: 9; label: Install faasd with TLS via Terraform
title: 9; label: 3 Exploring your faasd instance
title: 11; label: Log into faasd with the CLI and UI
title: 11; label: Deploy a function from the store
title: 12; label: Can I get an API with that?
title: 16; label: 4 Building your own functions
title: 19; label: Finding a template
title: 19; label: Where should you publish container images?
title: 20; label: Private registries
title: 20; label: Host a registry with faasd
title: 21; label: How templates are built
title: 21; label: Your first JavaScript function
title: 23; label: Adding configuration to your function
title: 26; label: Consuming secrets from functions
title: 27; label: Storing data with databases
title: 28; label: Unit testing with Node.js
title: 31; label: How to build multiple functions
title: 34; label: Invoking functions
title: 35; label: Making any process into a function
title: 36; label: 5 Monitoring invocations
title: 39; label: 6 Remote access and self-hosting faasd
title: 43; label: 7 Adding TLS to faasd
title: 45; label: Adding custom domains per function
title: 46; label: Adding a custom domain for your Grafana dashboard
title: 47; title: 1; label: 8 Additional containers and services in docker-compose.yaml
title: 48; label: Exposing core services
title: 48; label: Adding a Grafana Dashboard
title: 50; label: Adding a database - Postgresql
title: 51; label: Adding a database - InfluxDB
title: 52; label: Adding a cache - Redis
title: 54; label: Enabling password authentication for Redis
title: 55; label: Adding a self-hosted container registry
title: 55; label: 9 Scheduling invocations and background jobs
title: 59; label: Scheduled invocations with cron-connector
title: 59; label: Scheduled invocations with system cron
title: 60; label: 10 nats-connector
title: 62; label: 11 CI/CD
title: 65; label: Continuous integration using GitHub Actions
title: 66; label: Deploy from GitHub Actions and ghcr.io
title: 67; label: Follow an in-depth tutorial
title: 70; label: Deploy with multi-arch
title: 70; label: Further resources for CI/CD
title: 71; label: 12 Advanced topics, troubleshooting and tuning
title: 72; label: Tuning timeouts
title: 72; label: Asynchronous invocations
title: 73; label: Reclaiming space
title: 73; label: Exploring faasd resource consumption
title: 74; label: Find out a function’s memory and CPU usage
title: 75; label: Memory limits for functions
title: 76; label: Multiple namespaces for functions
title: 76; label: Upgrading and updating faasd
title: 77; label: Troubleshooting
title: 78; label: Finding logs with journalctl
title: 78; label: Logs for faasd itself
title: 78; label: Logs for the core services
title: 78; label: Logs for functions
title: 79; label: After rebooting my functions are unavailable or not ready
title: 79; label: 13 Wrapping up and taking things further
title: 80; label: Use-cases and ideas
title: 81; label: Scaling-up
title: 81; label: Getting help and reaching out
title: 81; label: Training, consultation and sponsorships
title: 81; label: faasd videos
title: 81