Apache Karaf is a small OSGi based runtime which provides a lightweight container onto which various components and applications can be deployed.

Here is a short list of features supported by the Karaf:

  • Hot deployment: Karaf supports hot deployment of OSGi bundles by monitoring jar files inside the [home]/deploy directory. Each time a jar is copied in this folder, it will be installed inside the runtime. You can then update or delete it and changes will be handled automatically. In addition, the Karaf also supports exploded bundles and custom deployers (blueprint and spring ones are included by default).
  • Dynamic configuration: Services are usually configured through the ConfigurationAdmin OSGi service. Such configuration can be defined in Karaf using property files inside the [home]/etc directory. These configurations are monitored and changes on the properties files will be propagated to the services.
  • Logging System: using a centralized logging back end supported by Log4J, Karaf supports a number of different APIs (JDK 1.4, JCL, SLF4J, Avalon, Tomcat, OSGi)
  • Provisioning: Provisioning of libraries or applications can be done through a number of different ways, by which they will be downloaded locally, installed and started.
  • Native OS integration: Karaf can be integrated into your own Operating System as a service so that the lifecycle will be bound to your Operating System.
  • Extensible Shell console: Karaf features a nice text console where you can manage the services, install new applications or libraries and manage their state. This shell is easily extensible by deploying new commands dynamically along with new features or applications.
  • Remote access: use any SSH client to connect to Karaf and issue commands in the console
  • Security framework based on JAAS
  • Managing instances: Karaf provides simple commands for managing multiple instances. You can easily create, delete, start and stop instances of Karaf through the console.
  • Karaf 4.0.x branch Supports the latest OSGi 5.0 containers: Apache Felix Framework 4.4 and Eclipse Equinox 3.9
  • Karaf 3.0.x branch Supports the latest OSGi 4.3 containers: Apache Felix Framework 4.0 and Eclipse Equinox 3.8
  • Karaf 2.4.x branch Supports the latest OSGi 5.0 containers: Apache Felix Framework 4.4 and Eclipse Equinox 3.9
  • Karaf 2.3.x branch Supports the latest OSGi 4.3 containers: Apache Felix Framework 4.0 and Eclipse Equinox 3.8
  • Karaf 2.2.x branch Supports the latest OSGi 4.2 containers: Apache Felix Framework 3.0 and Eclipse Equinox 3.6

News

The Apache Karaf Team posted on November 17, 2014
Karaf Cellar 2.3.3 released!

The Karaf team is pleased to announce the availability of Karaf Cellar 2.3.3.

This is an update patch for Apache Karaf Cellar 2.3.2, containing several bug fixes, and dependency updates.
For more information, please see the release notes.

The Apache Karaf Team posted on November 9, 2014
Karaf 2.3.9 released!

The Karaf team is pleased to announce the availability of Karaf 2.3.9.

This is an update patch for Apache Karaf 2.3.8, containing several bug fixes, and dependency updates. Amoung them are a fix for when Karaf throws a SocketTimeoutException and exits after 49 days, and env variables can now be read while running Karaf as a Linux service. An important dependency update has been made to Aries JPA API 1.0.2/JPA Container 1.0.2/JPA Blueprint Aries 1.0.4/JPA Container Context 1.0.4.
For more information, please see the release notes.

The Apache Karaf Team posted on October 14, 2014
Karaf 4.0.0.M1 released!

The Karaf team is pleased to announce the availability of Karaf 4.0.0.M1.

!! This is a technology preview release of Apache Karaf, and should NOT be considered production ready !!

Apache Karaf 4.0.0.M1 represents a major refactoring of the project, and includes numerous new features. We ask that users provide the community with their feed back so that the full Apache Karaf 4.0.0 release can be as feature complete and stable as possible.

The 4.0.x line will ship with OSGi Rev5 support via Felix 4.4.1 and Equinox 3.9.1-v20140110-1610, and a completely refactored internal framework without Blueprint for internal usage. From a users point of view these changes will yield a smaller, more efficient Karaf core. There will be a Blueprint feature present in Karaf so that you can easily install Blueprint based applications. You will always be capable of using Blueprint in Karaf. So the main difference from a user perspective is that you’d need to depend on the Blueprint service if you need it.

For more information, please see the release notes.

The Apache Karaf Team posted on October 13, 2014
Karaf 3.0.2 released!

The Karaf team is pleased to announce the availability of Karaf 3.0.2.

This is an update patch for Apache Karaf 3.0.x, containing many bug fixes, dependency updates, and improvements. New features highlights include: Support of !$ to recall the last command argument, a command to display bundle id, and automatically create data sources from configuration files.
For more information, please see the release notes.

Jamie Goodyear posted on September 20, 2014
Karaf 2.4.0 released!

The Karaf team is pleased to announce the availability of Karaf 2.4.0.

This release represents a new branch of Apache Karaf development. It includes the latest Aries and Pax libraries, Apache Pom 14, add support for role-based JMX authorization, includes heap dumps when we create debugging data from create dump command, blueprint-web feature, support for JAAS groups, and includes Pax CDI feature. There are several hundred items currently in this RC's release notes, so you'll want to spend some time discovering all the hidden gems.
For more information, please see the release notes.

Jamie Goodyear posted on September 19, 2014
Karaf 2.3.8 released!

The Karaf team is pleased to announce the availability of Karaf 2.3.8.

This is an update patch for Apache Karaf 2.3.7, containing several bug fixes, and dependency updates. We have introduced support of !$ to recall the last command argument, and improved the command description for osgi:shutdown.
For more information, please see the release notes.

Jamie Goodyear posted on September 6, 2014
Karaf 2.3.7 released!

The Karaf team is pleased to announce the availability of Karaf 2.3.7.

This is an update patch for Apache Karaf 2.3.6, containing many bug fixes, dependency updates, and improvements. New features include SyncopeLoginModule, and improved documentation for exposing JAAS BackendEngineFactory services for the login module and configfile override behavoir. This patch contains a high priority bug fix for Windows users experiencing console input issues.
For more information, please see the release notes.

Jamie Goodyear posted on August 1, 2014
Karaf 2.3.6 released!

The Karaf team is pleased to announce the availability of Karaf 2.3.6.

This is an update patch for Apache Karaf 2.3.5, containing many bug fixes, dependency updates, and improvements. New feature highlights include: Automatically create data sources from configuration files, add backing engine serivce for org.apache.karaf.jaas.modules.publickey.PublickeyLoginModule, add a flag to bin/client so that it can read private key from a specified location, and Provide shell:env command.
For more information, please see the release notes.

Jean-Baptiste Onofré posted on July 4, 2014
Karaf Cave 3.0.0 released

The Karaf team is pleased to announce the availability of Karaf Cave 3.0.0.
This release is the first one of the Cave 3.0.x serie, fully compatible with Karaf 3.0.x.
It includes major updates and bug fixes.
For more information, please see the release notes.

Jean-Baptiste Onofré posted on June 27, 2014
Karaf Cellar 3.0.0 released

The Karaf team is pleased to announce the availability of Karaf Cellar 3.0.0.
This release is the first one of the Cellar 3.0.x serie, fully compatible with Karaf 3.0.x and powered by Hazelcast 3.2.3.
It includes major updates and bug fixes.
For more information, please see the release notes.

Jean-Baptiste Onofre posted on June 20, 2014
Update on the website

The Karaf website has changed a little bit. We added a new webpage (accessible directly from the navigation menu on the left) providing an overview of the different Karaf and subprojects branches
and the releases schedule.

The purpose is to give you more visibility on the release dates.

Releases Schedule

Jamie Goodyear posted on April 13, 2014
Karaf 2.3.5 and 3.0.1 released!

The Karaf team is pleased to announce the availability of Karaf 2.3.5 and Karaf 3.0.1.

Apache Karaf 2.3.5

This is an update patch for Apache Karaf 2.3.4, containing many bug fixes, dependency updates, and improvements. New feature highlights include: monitoring etc/user.properties with Felix fileInstall, and adding MSSQL datasource type.
For more information, please see the release notes.

Apache Karaf 3.0.1

This is an update patch for Apache Karaf 3.0.0, containing many bug fixes, dependency updates, and improvements. New feature highlights include: the addition of Pax CDI to Karaf enterprise feature, monitoring etc/user.properties with Felix fileInstall, and adding MSSQL datasource type.
For more information, please see the release notes.