incubator-openwhisk

Apache OpenWhisk is a serverless event-based programming service and an Apache Incubator project.

Github星跟蹤圖

OpenWhisk

License
Join Slack
Twitter

Unit Tests
System Tests
MultiRuntime Tests
Standalone Tests
Scheduler Tests
Performance Tests
codecov

OpenWhisk is a serverless functions platform for building cloud applications.
OpenWhisk offers a rich programming model for creating serverless APIs from functions,
composing functions into serverless workflows, and connecting events to functions using rules and triggers.
Learn more at http://openwhisk.apache.org.

Quick Start

The easiest way to start using OpenWhisk is to install the "Standalone" OpenWhisk stack.
This is a full-featured OpenWhisk stack running as a Java process for convenience.
Serverless functions run within Docker containers. You will need Docker,
Java and Node.js available on your machine.

To get started:

git clone https://github.com/apache/openwhisk.git
cd openwhisk
./gradlew core:standalone:bootRun
  • When the OpenWhisk stack is up, it will open your browser to a functions Playground,
    typically served from http://localhost:3232. The Playground allows you create and run functions directly from your browser.

  • To make use of all OpenWhisk features, you will need the OpenWhisk command line tool called
    wsk which you can download from https://s.apache.org/openwhisk-cli-download.
    Please refer to the CLI configuration for additional details. Typically you
    configure the CLI for Standalone OpenWhisk as follows:

wsk property set \
  --apihost 'http://localhost:3233' \
  --auth '23bc46b1-71f6-4ed5-8c54-816aa4f8c502:123zO3xZCLrMN6v2BKK1dXYFpXlPkccOFqm12CdAsMgRU4VrNZ9lyGVCGuMDGIwP'
  • Standalone OpenWhisk can be configured to deploy additional capabilities when that is desirable.
    Additional resources are available here.

Deploy to Kubernetes

OpenWhisk can also be installed on a Kubernetes cluster. You can use
a managed Kubernetes cluster provisioned from a public cloud provider
(e.g., AKS, EKS, IKS, GKE), or a cluster you manage yourself.
Additionally for local development, OpenWhisk is compatible with Minikube,
and Kubernetes for Mac using the support built into Docker 18.06 (or higher).

To get started:

git clone https://github.com/apache/openwhisk-deploy-kube.git

Then follow the instructions in the OpenWhisk on Kubernetes README.md.

Learn Concepts and Commands

Browse the documentation to learn more. Here are some topics you may be
interested in:

OpenWhisk Community and Support

Report bugs, ask questions and request features here on GitHub.

You can also join the OpenWhisk Team on Slack https://openwhisk-team.slack.com and chat with developers. To get access to our public Slack team, request an invite https://openwhisk.apache.org/slack.html.

Project Repository Structure

The OpenWhisk system is built from a number of components. The picture below groups the components by their GitHub repos. Please open issues for a component against the appropriate repo (if in doubt just open against the main openwhisk repo).

component/repo mapping

What happens on an invocation?

This diagram depicts the steps which take place within Openwhisk when an action is invoked by the user:

component/repo mapping

主要指標

概覽
名稱與所有者apache/openwhisk
主編程語言Scala
編程語言JavaScript (語言數: 14)
平台
許可證Apache License 2.0
所有者活动
創建於2016-02-18 21:16:19
推送於2025-01-21 13:47:24
最后一次提交2025-01-21 07:47:24
發布數3
最新版本名稱2.0.0 (發布於 2024-04-07 09:14:58)
第一版名稱0.9.0-incubating (發布於 )
用户参与
星數6.6k
關注者數226
派生數1.2k
提交數3.1k
已啟用問題?
問題數2101
打開的問題數396
拉請求數2255
打開的拉請求數25
關閉的拉請求數1140
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?