Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/apache/camel-k
Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers
https://github.com/apache/camel-k
camel integration knative kubernetes openshift operator serverless
Last synced: 4 days ago
JSON representation
Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers
- Host: GitHub
- URL: https://github.com/apache/camel-k
- Owner: apache
- License: apache-2.0
- Created: 2018-08-31T08:38:42.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2024-10-29T01:35:27.000Z (2 months ago)
- Last Synced: 2024-10-29T14:54:43.087Z (2 months ago)
- Topics: camel, integration, knative, kubernetes, openshift, operator, serverless
- Language: Go
- Homepage: https://camel.apache.org/camel-k
- Size: 103 MB
- Stars: 866
- Watchers: 53
- Forks: 345
- Open Issues: 134
-
Metadata Files:
- Readme: README.adoc
- License: LICENSE
Awesome Lists containing this project
- awesome-ccamel - apache/camel-k - Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers (Go)
- awesome-camel-k - Camel K - Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers (Uncategorized / Uncategorized)
README
:toc: macro
:toclevels: 3= :camel: + :cloud: = Apache Camel K
image:https://img.shields.io/github/license/openshift/origin.svg?maxAge=2592000["Licensed under Apache License version 2.0", link="https://www.apache.org/licenses/LICENSE-2.0"]
image:https://goreportcard.com/badge/github.com/apache/camel-k["Go Report Card", link="https://goreportcard.com/report/github.com/apache/camel-k"]
image:https://godoc.org/github.com/apache/camel-k?status.svg["GoDoc", link="https://godoc.org/github.com/apache/camel-k"]
image:https://github.com/apache/camel-k/workflows/build/badge.svg["Build", link="https://github.com/apache/camel-k/actions/workflows/build.yml"]
image:https://github.com/apache/camel-k/actions/workflows/common.yml/badge.svg["Kubernetes", link="https://github.com/apache/camel-k/actions/workflows/common.yml"]
image:https://github.com/apache/camel-k/workflows/knative/badge.svg["Knative", link="https://github.com/apache/camel-k/actions/workflows/knative.yml"]
image:https://github.com/apache/camel-k/actions/workflows/nightly-release.yml/badge.svg["Nightly releases", link="https://github.com/apache/camel-k/actions/workflows/nightly-release.yml"]
image:https://github.com/apache/camel-k/actions/workflows/native.yml/badge.svg["Quarkus native", link="https://github.com/apache/camel-k/actions/workflows/native.yml"]
image:https://img.shields.io/badge/Coverage-47.6-yellow.svg["Go coverage", link="https://github.com/apache/camel-k/actions/workflows/nightly-coverage.yml"]
image:https://img.shields.io/badge/zulip-join_chat-brightgreen.svg["Chat on Zulip", link="https://camel.zulipchat.com"]Apache Camel K is a lightweight integration framework built from **Apache Camel** that runs natively on Kubernetes and is specifically designed for serverless and microservice architectures. Users of `Camel K` can instantly run integration code written in Camel DSL on their preferred **Cloud** provider.
https://camel.apache.org/camel-k/next/[How does it work?]
== :gear: Installation
Camel K allows you to run integrations directly on any `Kubernetes` cluster. To use it, you need to be connected to a cloud environment or to a local cluster created for development purposes.
https://camel.apache.org/camel-k/next/installation/installation.html[Installation procedure.]
== :arrow_forward: Running an Integration
You can use Camel DSL to define your `Integration`. Just save it in a file and use `kamel` command line interface (https://github.com/apache/camel-k/releases/latest[download latest release]) to run it. As an example, just try running:
[source,yaml]
.hello.yaml
----
- from:
uri: "timer:tick?period=3000"
steps:
- setBody:
constant: "Hello world from Camel K"
- to: "log:info"
----
----
kamel run hello.yaml
----You can even run your integrations in a `dev` mode. Change the code and see the **changes automatically applied (instantly)** to the remote integration pod! We have provided link:/examples[more examples] that you can use to inspire your next `Integration` development.
https://camel.apache.org/camel-k/next/running/running.html[See more details.]
== :camel: All the power from Apache Camel components
You can use any of the Apache Camel components available. The related dependencies will be resolved automatically.
Discover more about https://camel.apache.org/camel-k/next/configuration/dependencies.html[dependencies and components].
== :coffee: Not Just Java
Camel K supports multiple languages for writing integrations.
See all the https://camel.apache.org/camel-k/next/languages/languages.html[languages available].
== :checkered_flag: Traits
The details of how the integration is mapped into Kubernetes resources can be *customized using traits*.
More information is provided in the official documentation https://camel.apache.org/camel-k/next/traits/traits.html[traits section].
== :cloud: Engineered thinking on Cloud Native
Since the inception of the project, our goal was to bring `Apache Camel` to the cloud.
See the https://camel.apache.org/camel-k/next/architecture/architecture.html[software architecture details].
== :heart: Contributing
We love contributions and we want to make Camel K great!
Contributing is easy, just take a look at our https://camel.apache.org/camel-k/next/contributing/developers.html[developer's guide].
== :tickets: Licensing
This software is licensed under the terms you may find in the file named link:LICENSE[LICENSE] in this directory.