{"id":13416585,"url":"https://github.com/apache/openwhisk","last_synced_at":"2025-05-12T13:16:50.185Z","repository":{"id":37444588,"uuid":"52039373","full_name":"apache/openwhisk","owner":"apache","description":"Apache OpenWhisk is an open source serverless cloud platform","archived":false,"fork":false,"pushed_at":"2025-01-21T13:47:24.000Z","size":69808,"stargazers_count":6639,"open_issues_count":421,"forks_count":1177,"subscribers_count":226,"default_branch":"master","last_synced_at":"2025-05-12T13:16:35.788Z","etag":null,"topics":["apache","cloud","docker","faas","functions","functions-as-a-service","kubernetes","openwhisk","serverless","serverless-architectures","serverless-functions"],"latest_commit_sha":null,"homepage":"https://openwhisk.apache.org/","language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apache.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"docs/security.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2016-02-18T21:16:19.000Z","updated_at":"2025-05-10T23:16:23.000Z","dependencies_parsed_at":"2023-10-20T17:30:09.769Z","dependency_job_id":"c2d400f9-4937-496f-b8e1-65e3243d388d","html_url":"https://github.com/apache/openwhisk","commit_stats":{"total_commits":3091,"total_committers":255,"mean_commits":12.12156862745098,"dds":0.9236493044322226,"last_synced_commit":"a4508ba598cd71c9b8a1f23ec4eb34080ccdd58e"},"previous_names":["apache/incubator-openwhisk"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fopenwhisk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fopenwhisk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fopenwhisk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fopenwhisk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apache","download_url":"https://codeload.github.com/apache/openwhisk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253745196,"owners_count":21957319,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apache","cloud","docker","faas","functions","functions-as-a-service","kubernetes","openwhisk","serverless","serverless-architectures","serverless-functions"],"created_at":"2024-07-30T21:01:01.463Z","updated_at":"2025-05-12T13:16:50.143Z","avatar_url":"https://github.com/apache.png","language":"Scala","readme":"\u003c!--\n#\n# Licensed to the Apache Software Foundation (ASF) under one or more\n# contributor license agreements.  See the NOTICE file distributed with\n# this work for additional information regarding copyright ownership.\n# The ASF licenses this file to You under the Apache License, Version 2.0\n# (the \"License\"); you may not use this file except in compliance with\n# the License.  You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n#\n--\u003e\n\n# OpenWhisk\n\n[![License](https://img.shields.io/badge/license-Apache--2.0-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0)\n[![Join Slack](https://img.shields.io/badge/join-slack-9B69A0.svg)](https://openwhisk-team.slack.com/)\n[![Twitter](https://img.shields.io/twitter/follow/openwhisk.svg?style=social\u0026logo=twitter)](https://twitter.com/intent/follow?screen_name=openwhisk)\n\n[![Unit Tests](https://github.com/apache/openwhisk/actions/workflows/1-unit.yaml/badge.svg)](https://github.com/apache/openwhisk/actions/workflows/1-unit.yaml)\n[![System Tests](https://github.com/apache/openwhisk/actions/workflows/2-system.yaml/badge.svg)](https://github.com/apache/openwhisk/actions/workflows/2-system.yaml)\n[![MultiRuntime Tests](https://github.com/apache/openwhisk/actions/workflows/3-multi-runtime.yaml/badge.svg)](https://github.com/apache/openwhisk/actions/workflows/3-multi-runtime.yaml)\n[![Standalone Tests](https://github.com/apache/openwhisk/actions/workflows/4-standalone.yaml/badge.svg)](https://github.com/apache/openwhisk/actions/workflows/4-standalone.yaml)\n[![Scheduler Tests](https://github.com/apache/openwhisk/actions/workflows/5-scheduler.yaml/badge.svg)](https://github.com/apache/openwhisk/actions/workflows/5-scheduler.yaml)\n[![Performance Tests](https://github.com/apache/openwhisk/actions/workflows/6-performance.yaml/badge.svg)](https://github.com/apache/openwhisk/actions/workflows/6-performance.yaml)\n[![codecov](https://codecov.io/gh/apache/openwhisk/branch/master/graph/badge.svg)](https://codecov.io/gh/apache/openwhisk)\n\nOpenWhisk is a serverless functions platform for building cloud applications.\nOpenWhisk offers a rich programming model for creating serverless APIs from functions,\ncomposing functions into serverless workflows, and connecting events to functions using rules and triggers.\nLearn more at [http://openwhisk.apache.org](http://openwhisk.apache.org).\n\n* [Quick Start](#quick-start) (Deploy and Use OpenWhisk on your machine)\n* [Deploy to Kubernetes](#deploy-to-kubernetes) (For development and production)\n* For project contributors and Docker deployments:\n  * [Deploy to Docker for Mac](./tools/macos/README.md)\n  * [Deploy to Docker for Ubuntu](./tools/ubuntu-setup/README.md)\n* [Learn Concepts and Commands](#learn-concepts-and-commands)\n* [OpenWhisk Community and Support](#openwhisk-community-and-support)\n* [Project Repository Structure](#project-repository-structure)\n\n### Quick Start\n\nThe easiest way to start using OpenWhisk is to install the \"Standalone\" OpenWhisk stack.\nThis is a full-featured OpenWhisk stack running as a Java process for convenience.\nServerless functions run within Docker containers. You will need [Docker](https://docs.docker.com/install),\n[Java](https://java.com/en/download/help/download_options.xml) and [Node.js](https://nodejs.org) available on your machine.\n\nTo get started:\n```\ngit clone https://github.com/apache/openwhisk.git\ncd openwhisk\n./gradlew core:standalone:bootRun\n```\n\n- When the OpenWhisk stack is up, it will open your browser to a functions [Playground](./docs/images/playground-ui.png),\ntypically served from http://localhost:3232. The Playground allows you create and run functions directly from your browser.\n\n- To make use of all OpenWhisk features, you will need the OpenWhisk command line tool called\n`wsk` which you can download from https://s.apache.org/openwhisk-cli-download.\nPlease refer to the [CLI configuration](./docs/cli.md) for additional details. Typically you\nconfigure the CLI for Standalone OpenWhisk as follows:\n```\nwsk property set \\\n  --apihost 'http://localhost:3233' \\\n  --auth '23bc46b1-71f6-4ed5-8c54-816aa4f8c502:123zO3xZCLrMN6v2BKK1dXYFpXlPkccOFqm12CdAsMgRU4VrNZ9lyGVCGuMDGIwP'\n```\n\n- Standalone OpenWhisk can be configured to deploy additional capabilities when that is desirable.\nAdditional resources are available [here](./core/standalone/README.md).\n\n### Deploy to Kubernetes\n\nOpenWhisk can also be installed on a Kubernetes cluster. You can use\na managed Kubernetes cluster provisioned from a public cloud provider\n(e.g., AKS, EKS, IKS, GKE), or a cluster you manage yourself.\nAdditionally for local development, OpenWhisk is compatible with Minikube,\nand Kubernetes for Mac using the support built into Docker 18.06 (or higher).\n\nTo get started:\n\n```\ngit clone https://github.com/apache/openwhisk-deploy-kube.git\n```\n\nThen follow the instructions in the [OpenWhisk on Kubernetes README.md](https://github.com/apache/openwhisk-deploy-kube/blob/master/README.md).\n\n### Learn Concepts and Commands\n\nBrowse the [documentation](docs/) to learn more. Here are some topics you may be\ninterested in:\n\n- [System overview](docs/about.md)\n- [Getting Started](docs/README.md)\n- [Create and invoke actions](docs/actions.md)\n- [Create triggers and rules](docs/triggers_rules.md)\n- [Use and create packages](docs/packages.md)\n- [Browse and use the catalog](docs/catalog.md)\n- [OpenWhisk system details](docs/reference.md)\n- [Implementing feeds](docs/feeds.md)\n- [Developing a runtime for a new language](docs/actions-actionloop.md)\n\n### OpenWhisk Community and Support\n\nReport bugs, ask questions and request features [here on GitHub](../../issues).\n\nYou can also join the OpenWhisk Team on Slack [https://openwhisk-team.slack.com](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](https://openwhisk.apache.org/slack.html).\n\n### Project Repository Structure\n\nThe OpenWhisk system is built from a [number of components](docs/dev/modules.md).  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).\n\n![component/repo mapping](docs/images/components_to_repos.png)\n\n### What happens on an invocation?\n\nThis diagram depicts the steps which take place within Openwhisk when an action is invoked by the user:\n\n![component/repo mapping](docs/images/Openwhisk-flow-diagram.png)\n","funding_links":[],"categories":["Development with Docker","Scala","docker","其他__大数据","Serverless","Platforms"],"sub_categories":["Serverless","网络服务_其他"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fopenwhisk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapache%2Fopenwhisk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fopenwhisk/lists"}