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: about 1 month ago
JSON representation

Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers

Lists

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/nightly-native-test.yml/badge.svg["Quarkus native", link="https://github.com/apache/camel-k/actions/workflows/nightly-native-test.yml"]
image:https://img.shields.io/badge/Coverage-38.4%25-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 a `Kubernetes` or `OpenShift` 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.