- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License. */
Welcome to Apache Karaf
Apache Karaf is a modern and polymorphic container. It's a lightweight, powerful, and enterprise ready container powered by OSGi. The container is able to host different kind of applications, OSGi or non OSGi.
The following features are included:
- 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.
- 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 the kernel and issue commands in the console
- Security framework based on JAAS
- 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.
For an Apache Karaf source distribution, please read BUILDING for instructions on building Apache Karaf.
For an Apache Karaf binary distribution, please read RELEASE-NOTES for installation instructions and list of supported and unsupported features.
The PDF manual is the right place to find any information about Karaf.
Alternatively, you can also find out how to get started here: http://karaf.apache.org/
If you need more help try talking to us on our mailing lists http://karaf.apache.org/site/mailinglists.html
If you find any issues with Apache Karaf, please submit reports with JIRA here: http://issues.apache.org/jira/browse/KARAF
We welcome contributions, and encourage you to get involved in the Karaf community. If you'd like to learn more about how you can contribute, please see: http://karaf.apache.org/index/community/contributing.html
Many thanks for using Apache Karaf.
The Karaf Team