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?
已存档?
是复刻?
已锁定?
是镜像?
是私有?