Retour au classement

Lightweight and portable version of OpenFaaS

faasopenfaasfaasdcontainerscontainerdhttpwebhooksedgearmserverlessgolangmicroservices
Croissance des étoiles
Étoiles
3.3k
Forks
233
Croissance hebdomadaire
Issues
3
1k2k3k
déc. 2019févr. 2022mai 2024juil. 2026
ArtefactsGo Modulesgo get github.com/openfaas/faasd
README

faasd - a lightweight and portable version of OpenFaaS

faasd is OpenFaaS reimagined, but without the cost and complexity of Kubernetes. It runs on a single host with very modest requirements, making it fast and easy to manage. Under the hood it uses containerd and Container Networking Interface (CNI) along with the same core OpenFaaS components from the main project.

faasd logo

Features & Benefits

  • Lightweight - faasd is a single Go binary, which runs as a systemd service making it easy to manage
  • Portable - it runs on any Linux host with containerd and CNI, on as little as 2x vCPU and 2GB RAM - x86_64 and Arm64 supported
  • Easy to manage - unlike Kubernetes, its API is stable and requires little maintenance
  • Low cost - it's licensed per installation, so you can invoke your functions as much as you need, without additional cost
  • Stateful containers - faasd supports stateful containers with persistent volumes such as PostgreSQL, Grafana, Prometheus, etc
  • Built on OpenFaaS - uses the same containers that power OpenFaaS on Kubernetes for the Gateway, Queue-Worker, Event Connectors, Dashboards, Scale To Zero, etc
  • Ideal for internal business use - use it to build internal tools, automate tasks, and integrate with existing systems
  • Deploy it for a customer - package your functions along with OpenFaaS Edge into a VM image, and deploy it to your customers to run in their own datacenters

faasd does not create the same maintenance burden you'll find with installing, upgrading, and securing a Kubernetes cluster. You can deploy it and walk away, in the worst case, just deploy a new VM and deploy your functions again.

You can learn more about supported OpenFaaS features in the ROADMAP.md

Getting Started

There are two versions of faasd:

  • faasd CE - for non-commercial, personal use only licensed under the faasd CE EULA
  • OpenFaaS Edge (faasd-pro) - fully licensed for commercial use

You can install either edition using the instructions in the OpenFaaS docs.

You can request a license for OpenFaaS Edge using this form

Further resources

There are many blog posts and documentation pages about OpenFaaS on Kubernetes, which also apply to faasd.

Videos and overviews:

Use-cases and tutorials:

Additional resources:

Deployment tutorials

Terraform scripts:

Training / Handbook

You can find various resources to learn about faasd for free, however the official handbook is the most comprehensive guide to getting started with faasd and OpenFaaS.

"Serverless For Everyone Else" is the official handbook and was written to contribute funds towards the upkeep and maintenance of the project.

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.

Topics include:

  • Should you deploy to a VPS or Raspberry Pi?
  • Deploying your server with bash, cloud-init or terraform
  • 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
  • Customising templates
  • 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
  • Self-hosting on your Raspberry Pi
  • Adding a database for storage with InfluxDB and Postgresql
  • Troubleshooting and logs
  • CI/CD with GitHub Actions and multi-arch
  • Taking things further, community and case-studies

View sample pages, reviews and testimonials on Gumroad:

"Serverless For Everyone Else"

Dépôts similaires
openfaas/faas

OpenFaaS - Serverless Functions Made Simple

GoGo ModulesOtherfunctions-as-a-servicefunctions
openfaas.com
26.2k2k
firebase/functions-samples

Collection of sample apps showcasing popular use cases using Cloud Functions for Firebase

JavaScriptnpmApache License 2.0faasfaas-platform
firebase.google.com/docs/functions
12.2k3.8k
fission/fission

Fast and Simple Serverless Functions for Kubernetes

GoGo ModulesApache License 2.0kubernetesserverless
fission.io
8.9k789
labring/laf

Laf is a vibrant cloud development platform that provides essential tools like cloud functions, databases, and storage solutions. It enables developers to quickly unleash their creativity and bring innovative ideas to life with ease.

TypeScriptnpmApache License 2.0serverlessfirebase
sealos.run
7.6k671
vmware-archive/kubeless

Kubernetes Native Serverless Framework

GoGo ModulesApache License 2.0kubernetesserverless
kubeless.io
6.8k738
apache/openwhisk

Apache OpenWhisk is an open source serverless cloud platform

ScalaApache License 2.0openwhiskapache
openwhisk.apache.org
6.8k1.2k
fnproject/fn

The container native, cloud agnostic serverless platform.

GoGo ModulesApache License 2.0serverlessfaas
fnproject.io
5.9k406
nuclio/nuclio

High-Performance Serverless event and data processing platform

GoGo ModulesApache License 2.0serverlesskubernetes
nuclio.io
5.7k565
knative/docs

User documentation for Knative components.

HTMLOtherkubernetesistio
knative.dev/docs/
5.1k1.3k
acode/cli

Autocode CLI and standard library tooling

JavaScriptnpmMIT Licenseregistryserverless
autocode.com
3.8k161
brefphp/bref

Serverless PHP on AWS Lambda

PHPPackagistMIT Licensephplambda
bref.sh
3.4k381
iron-io/functions

IronFunctions - the serverless microservices platform by

GoGo ModulesApache License 2.0serverlessfaas
iron.io
3.2k222