Esta página se muestra en inglés. Una traducción al español está en curso.
ConfigsMay 10, 2026·3 min de lectura

Fn Project — Container-Native Serverless Functions Platform

An open-source container-native serverless platform that runs functions as Docker containers on any cloud or on-prem.

Introduction

Fn Project is an open-source, container-native serverless platform originally created at Oracle. Every function runs inside a standard Docker container, which means any language or binary that can be packaged in a container can be used as a serverless function. It runs on any infrastructure — cloud, on-premises, or a laptop.

What Fn Project Does

  • Runs serverless functions packaged as Docker containers on any infrastructure
  • Supports any programming language via Docker-based function development kits (FDKs)
  • Provides hot function containers that stay warm to reduce cold start latency
  • Includes a built-in flow orchestration service for composing multi-step workflows
  • Exposes a REST API and CLI for function management, invocation, and monitoring

Architecture Overview

The Fn server is a single Go binary that manages function lifecycle. When a function is invoked via HTTP, the server pulls the corresponding container image, starts it, and routes the request via stdin/stdout. Hot containers remain running between invocations to eliminate cold starts. The server stores function metadata in a SQL database (SQLite by default, MySQL/Postgres for production) and uses an LRU cache for container scheduling.

Self-Hosting & Configuration

  • Single binary or Docker-based deployment with fn start
  • Configure a production database backend (MySQL or PostgreSQL) via environment variables
  • Set up an external Docker registry for multi-node deployments
  • Use fn deploy to push function images to a registry and register routes
  • Scale horizontally by adding Fn server nodes behind a load balancer

Key Features

  • Language agnostic: any runtime that fits in a Docker container works
  • Hot functions: containers stay warm across invocations to reduce latency
  • Fn Flow: built-in orchestration for composing functions into workflows with error handling
  • Standards-based: uses OCI container images, no proprietary packaging format
  • Multi-cloud portability: runs identically on AWS, GCP, Azure, or bare metal

Comparison with Similar Tools

  • AWS Lambda — managed serverless locked to AWS; Fn Project is self-hosted and cloud-agnostic
  • OpenFaaS — similar goals but uses a different function packaging model; Fn uses raw Docker containers
  • Knative — Kubernetes-native serverless requiring a K8s cluster; Fn runs standalone with Docker only
  • Fission — Kubernetes-focused with environment pooling; Fn is container-native without requiring K8s

FAQ

Q: Does Fn Project require Kubernetes? A: No. Fn runs directly on Docker. However, it can optionally be deployed on Kubernetes for orchestration.

Q: How are cold starts handled? A: Fn keeps hot containers alive between invocations. Frequently called functions avoid cold starts entirely. Idle containers are reclaimed after a configurable timeout.

Q: What languages are supported? A: Fn provides official FDKs for Go, Java, Python, Ruby, Node.js, and C#. Any language that runs in a Docker container can be used without an FDK.

Q: Is Fn Project still maintained? A: The project is available on GitHub with community contributions. It is used in production at Oracle Cloud Infrastructure as the basis for Oracle Functions.

Sources

Discusión

Inicia sesión para unirte a la discusión.
Aún no hay comentarios. Sé el primero en compartir tus ideas.

Activos relacionados