Mirror of Apache Karaf
Clone or download
Permalink
Failed to load latest commit information.
archetypes [KARAF-5940] Fix maven-install-plugin version to 2.5.2 to avoid artif… Oct 2, 2018
assemblies [KARAF-5974]add java activation impl when use jdk9/10/11 Oct 12, 2018
audit [KARAF-5917]EventLoggerTest is broken for some timezones. Sep 17, 2018
bundle [maven-release-plugin] prepare for next development iteration Aug 17, 2018
client Fix ChannelExec exit status handling Sep 10, 2018
config [maven-release-plugin] prepare for next development iteration Aug 17, 2018
deployer [maven-release-plugin] prepare for next development iteration Aug 17, 2018
diagnostic [maven-release-plugin] prepare for next development iteration Aug 17, 2018
docker [maven-release-plugin] prepare for next development iteration Aug 17, 2018
etc/appended-resources Fix NOTICEs files wrt jline Nov 17, 2016
event [maven-release-plugin] prepare for next development iteration Aug 17, 2018
examples [EXAMPLES]: Fix Karaf REST README Oct 6, 2018
features [KARAF-5933]use JAXB2.3 with JDK 9/10/11 Sep 29, 2018
http [maven-release-plugin] prepare for next development iteration Aug 17, 2018
instance [KARAF-5567]Trying to access ServerInfo service results in bundle wir… Sep 20, 2018
itests [KARAF-5929]fix several itests failed with JDK11 Sep 27, 2018
jaas [KARAF-5933]use JAXB2.3 with JDK 9/10/11 Sep 29, 2018
jdbc [maven-release-plugin] prepare for next development iteration Aug 17, 2018
jms [maven-release-plugin] prepare for next development iteration Aug 17, 2018
jndi [maven-release-plugin] prepare for next development iteration Aug 17, 2018
jpa [maven-release-plugin] prepare for next development iteration Aug 17, 2018
kar [maven-release-plugin] prepare for next development iteration Aug 17, 2018
log [maven-release-plugin] prepare for next development iteration Aug 17, 2018
main Update jaxb export versions Sep 28, 2018
management [maven-release-plugin] prepare for next development iteration Aug 17, 2018
manual [KARAF-5936] Upgrade to maven-scm-publish-plugin 3.0.0 and asciidocto… Oct 2, 2018
maven [maven-release-plugin] prepare for next development iteration Aug 17, 2018
obr [maven-release-plugin] prepare for next development iteration Aug 17, 2018
package [maven-release-plugin] prepare for next development iteration Aug 17, 2018
profile [maven-release-plugin] prepare for next development iteration Aug 17, 2018
scheduler [KARAF-5933]use JAXB2.3 with JDK 9/10/11 Sep 29, 2018
scr [maven-release-plugin] prepare for next development iteration Aug 17, 2018
service [maven-release-plugin] prepare for next development iteration Aug 17, 2018
services [maven-release-plugin] prepare for next development iteration Aug 17, 2018
shell [KARAF-5887] Fix NPE when starting karaf using bin/shell Sep 11, 2018
specs [KARAF-5911] Restrict XML entities Sep 14, 2018
subsystem [maven-release-plugin] prepare for next development iteration Aug 17, 2018
system [maven-release-plugin] prepare for next development iteration Aug 17, 2018
tooling [KARAF-5937] karaf-maven-plugin verify logs cause of failure Oct 1, 2018
util [KARAF-5911] Restrict XML entities Sep 14, 2018
web [maven-release-plugin] prepare for next development iteration Aug 17, 2018
webconsole [KARAF-5906] Update to Apache Felix Webconsole 4.3.8 and latest jQuer… Sep 21, 2018
wrapper [KARAF-5908] Re-add quotes in Windows karaf-wrapper.conf Sep 12, 2018
.gitignore add Eclipse's .apt_generated_tests/ directory to .gitignore May 23, 2018
BUILDING.md Use md format and fix rat issues Aug 17, 2018
LICENSE Remove ICU4J references Dec 21, 2012
NOTICE Cleanup NOTICE Jul 7, 2018
README.md Updated README.md Aug 17, 2018
RELEASE-NOTES.md Update RELEASE-NOTES in preparation for the release Aug 17, 2018
create-tracker.script Use md format and fix rat issues Aug 17, 2018
pom.xml Merge pull request #631 from jbonofre/KARAF-5960 Oct 9, 2018

README.md

Apache Karaf

Apache Karaf is a modern and polymorphic applications container. It's a lightweight, powered, and enterprise ready container powered by OSGi. Apache Karaf is a "product project", providing a complete and turnkey runtime. The runtime is "multi-facets", meaning that you can deploy different kind of applications: OSGi or non OSGi, webapplication, services based, ...

Overview

  • 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 Kernel also supports exploded bundles and custom deployers (a spring one is 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.
  • Resolver: Apache Karaf resolver is able to deal with requirements and capabilities of your module, simplifying the way of deploying your applications.
  • 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. It interacts with the resolver to automatically install the required components.
  • 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 the kernel and issue commands in the console
  • Security & ACL framework based on JAAS providing complete RBAC solution.
  • Managing instances: Karaf provides simple commands for managing instances of Karaf. You can easily create, delete, start and stop instances of Karaf through the console.
  • Enterprise features: Karaf provides a bunch of enterprise features that you can use in your applications (JDBC, JPA, JTA, JMS, ...).
  • WebContainer: Karaf provides a full features web container, allowing you to deploy your web applications.
  • REST & Services: Karaf supports different service frameworks as Apache CXF allowing you to easily implements your services.
  • Karaf Extensions: Karaf project is a complete ecosystem. The container can be extended by other Karaf subprojects such as Karaf Decanter, Karaf Cellar, Karaf Cave, ...
  • Third Party Extensions: Karaf is a supported runtime for a lot of other projects as Apache Camel, and much more.

Getting Started

For an Apache Karaf source distribution, please read BUILDING.md for instructions on building Apache Karaf.

For an Apache Karaf binary distribution, please read RELEASE-NOTES.md for installation instructions and list of supported and unsupported features.

The PDF manual is the right place to find any information about Karaf.

The examples provide a bunch of turnkey minimal applications that you can deploy in Apache Karaf and extend/template as you want.

Contact Us

To get involved in Apache Karaf:

We also have a contributor's guide.

More Information

Many thanks for using Apache Karaf.

The Apache Karaf Team