Jump To Close Expand all Collapse all Table of contents Deploying into Apache Karaf Making open source more inclusive I. Developer Guide Expand section "I. Developer Guide" Collapse section "I. Developer Guide" 1. Introduction to OSGi Expand section "1. Introduction to OSGi" Collapse section "1. Introduction to OSGi" 1.1. Overview 1.2. Architecture of Apache Karaf 1.3. OSGi Framework Expand section "1.3. OSGi Framework" Collapse section "1.3. OSGi Framework" 1.3.1. Overview 1.3.2. OSGi architecture 1.4. OSGi Services Expand section "1.4. OSGi Services" Collapse section "1.4. OSGi Services" 1.4.1. Overview 1.4.2. OSGi service registry 1.5. OSGi Bundles 2. Starting and Stopping Apache Karaf Expand section "2. Starting and Stopping Apache Karaf" Collapse section "2. Starting and Stopping Apache Karaf" 2.1. Starting Apache Karaf Expand section "2.1. Starting Apache Karaf" Collapse section "2.1. Starting Apache Karaf" 2.1.1. Setting up your environment 2.1.2. Launching the runtime in console mode 2.1.3. Launching the runtime in server mode 2.1.4. Launching the runtime in client mode 2.1.5. Running Fuse in debug mode Expand section "2.1.5. Running Fuse in debug mode" Collapse section "2.1.5. Running Fuse in debug mode" 2.1.5.1. Use the Karaf environment variable 2.1.5.2. Run Fuse debug 2.1.5.3. Run Fuse debugs 2.2. Stopping Apache Karaf Expand section "2.2. Stopping Apache Karaf" Collapse section "2.2. Stopping Apache Karaf" 2.2.1. Stopping an instance from a local console 2.2.2. Stopping an instance running in server mode 2.2.3. Stopping a remote instance 3. Basic Security Expand section "3. Basic Security" Collapse section "3. Basic Security" 3.1. Configuring Basic Security Expand section "3.1. Configuring Basic Security" Collapse section "3.1. Configuring Basic Security" 3.1.1. Overview 3.1.2. Before you start the container 3.1.3. Create a secure JAAS user 3.1.4. Role-based access control 3.1.5. Ports exposed by the Apache Karaf container 3.1.6. Enabling the remote console port 3.1.7. Strengthening security on the remote console port 3.1.8. Enabling the JMX port 3.1.9. Strengthening security on the Fuse Console port 4. Installing Apache Karaf as a Service Expand section "4. Installing Apache Karaf as a Service" Collapse section "4. Installing Apache Karaf as a Service" 4.1. Overview 4.2. Running Karaf as a Service 4.3. Systemd 4.4. SysV 4.5. Solaris SMF 4.6. Windows 4.7. karaf-service.sh Options 5. Building an OSGi Bundle Expand section "5. Building an OSGi Bundle" Collapse section "5. Building an OSGi Bundle" 5.1. Generating a Bundle Project Expand section "5.1. Generating a Bundle Project" Collapse section "5.1. Generating a Bundle Project" 5.1.1. Generating bundle projects with Maven archetypes 5.1.2. Apache Camel archetype 5.1.3. Building the bundle 5.2. Modifying an Existing Maven Project Expand section "5.2. Modifying an Existing Maven Project" Collapse section "5.2. Modifying an Existing Maven Project" 5.2.1. Overview 5.2.2. Change the package type to bundle 5.2.3. Add the bundle plug-in to your POM 5.2.4. Customize the bundle plug-in 5.2.5. Customize the JDK compiler version 5.3. Packaging a Web Service in a Bundle Expand section "5.3. Packaging a Web Service in a Bundle" Collapse section "5.3. Packaging a Web Service in a Bundle" 5.3.1. Overview 5.3.2. Modifying the POM file to generate a bundle 5.3.3. Mandatory import packages 5.3.4. Sample Maven bundle plug-in instructions 5.3.5. Add a code generation plug-in 5.3.6. OSGi configuration properties 5.3.7. Configuring the Bundle Plug-In 5.3.8. OSGI configAdmin file naming convention 6. Hot deployment vs manual deployment Expand section "6. Hot deployment vs manual deployment" Collapse section "6. Hot deployment vs manual deployment" 6.1. Hot Deployment Expand section "6.1. Hot Deployment" Collapse section "6.1. Hot Deployment" 6.1.1. Hot deploy directory 6.2. Hot undeploying a bundle 6.3. Manual Deployment Expand section "6.3. Manual Deployment" Collapse section "6.3. Manual Deployment" 6.3.1. Overview 6.3.2. Installing a bundle 6.3.3. Uninstalling a bundle 6.3.4. URL schemes for locating bundles 6.4. Redeploying bundles automatically using bundle:watch 7. Lifecycle Management Expand section "7. Lifecycle Management" Collapse section "7. Lifecycle Management" 7.1. Bundle lifecycle states 7.2. Installing and resolving bundles 7.3. Starting and stopping bundles 7.4. Bundle start level 7.5. Specifying a bundle’s start level 7.6. System start level 8. Troubleshooting Dependencies Expand section "8. Troubleshooting Dependencies" Collapse section "8. Troubleshooting Dependencies" 8.1. Missing dependencies 8.2. Required features or bundles are not installed 8.3. Import-Package header is incomplete 8.4. How to track down missing dependencies 9. Deploying Features Expand section "9. Deploying Features" Collapse section "9. Deploying Features" 9.1. Creating a Feature Expand section "9.1. Creating a Feature" Collapse section "9.1. Creating a Feature" 9.1.1. Overview 9.2. Create a custom feature repository 9.3. Add a feature to the custom feature repository 9.4. Add the local repository URL to the features service 9.5. Add dependent features to the feature 9.6. Add OSGi configurations to the feature 9.7. Automatically deploy an OSGi configuration 10. Deploying a Feature Expand section "10. Deploying a Feature" Collapse section "10. Deploying a Feature" 10.1. Overview 10.2. Installing at the console 10.3. Uninstalling at the console 10.4. Hot deployment 10.5. Hot undeploying a features file 10.6. Adding a feature to the boot configuration 11. Deploying a Plain JAR Expand section "11. Deploying a Plain JAR" Collapse section "11. Deploying a Plain JAR" 11.1. Converting a JAR Using the wrap Scheme 12. OSGi Services Expand section "12. OSGi Services" Collapse section "12. OSGi Services" 12.1. The Blueprint Container Expand section "12.1. The Blueprint Container" Collapse section "12.1. The Blueprint Container" 12.1.1. Blueprint Configuration 12.1.2. Defining a Service Bean 12.1.3. Using properties to configure Blueprint 12.2. Exporting a Service 12.3. Importing a Service 12.4. Publishing an OSGi Service Expand section "12.4. Publishing an OSGi Service" Collapse section "12.4. Publishing an OSGi Service" 12.4.1. Overview 12.4.2. Prerequisites 12.4.3. Generating a Maven project 12.4.4. Customizing the POM file 12.4.5. Writing the service interface 12.4.6. Writing the service class 12.4.7. Writing the Blueprint file 12.4.8. Running the service bundle 12.5. Accessing an OSGi Service Expand section "12.5. Accessing an OSGi Service" Collapse section "12.5. Accessing an OSGi Service" 12.5.1. Overview 12.5.2. Prerequisites 12.5.3. Generating a Maven project 12.5.4. Customizing the POM file 12.5.5. Writing the Blueprint file 12.5.6. Writing the client class 12.5.7. Running the client bundle 12.6. Integration with Apache Camel Expand section "12.6. Integration with Apache Camel" Collapse section "12.6. Integration with Apache Camel" 12.6.1. Overview 12.6.2. Registry chaining 12.6.3. Sample OSGi service interface 12.6.4. Sample service export 12.6.5. Invoking the OSGi service from Java DSL 12.6.6. Invoking the OSGi service from XML DSL 13. Deploying using a JMS broker Expand section "13. Deploying using a JMS broker" Collapse section "13. Deploying using a JMS broker" 13.1. AMQ 7 quickstart 13.2. Using the Artemis core client 14. Failover Deployments Expand section "14. Failover Deployments" Collapse section "14. Failover Deployments" 14.1. Using a Simple Lock File System 14.2. Using a JDBC Lock System 14.3. Container-level Locking 15. URL Handlers Expand section "15. URL Handlers" Collapse section "15. URL Handlers" 15.1. File URL Handler Expand section "15.1. File URL Handler" Collapse section "15.1. File URL Handler" 15.1.1. Syntax 15.1.2. Examples 15.2. HTTP URL Handler Expand section "15.2. HTTP URL Handler" Collapse section "15.2. HTTP URL Handler" 15.2.1. Syntax 15.3. Mvn URL Handler Expand section "15.3. Mvn URL Handler" Collapse section "15.3. Mvn URL Handler" 15.3.1. Overview 15.3.2. Syntax 15.3.3. Omitting coordinates 15.3.4. Specifying a version range 15.3.5. Configuring the Mvn URL handler 15.3.6. Check the Mvn URL settings 15.3.7. Edit the configuration file 15.3.8. Customize the location of the local repository 15.3.9. Reference 15.4. Wrap URL Handler Expand section "15.4. Wrap URL Handler" Collapse section "15.4. Wrap URL Handler" 15.4.1. Overview 15.4.2. Syntax 15.4.3. Default instructions 15.4.4. Examples 15.4.5. Reference 15.5. War URL Handler Expand section "15.5. War URL Handler" Collapse section "15.5. War URL Handler" 15.5.1. Overview 15.5.2. Syntax 15.5.3. WAR-specific properties/instructions 15.5.4. Default instructions 15.5.5. Examples 15.5.6. Reference II. User Guide Expand section "II. User Guide" Collapse section "II. User Guide" 16. Introduction to the Deploying into Apache Karaf user guide Expand section "16. Introduction to the Deploying into Apache Karaf user guide" Collapse section "16. Introduction to the Deploying into Apache Karaf user guide" 16.1. Introducing Fuse Configuration 16.2. OSGi configuration 16.3. Configuration files 16.4. Advanced Undertow configuration Expand section "16.4. Advanced Undertow configuration" Collapse section "16.4. Advanced Undertow configuration" 16.4.1. IO configuration 16.4.2. Worker IO configuration 16.5. Configuration file naming convention 16.6. Setting Java Options 16.7. Config Console Commands 16.8. JMX ConfigMBean 16.9. Using the console Expand section "16.9. Using the console" Collapse section "16.9. Using the console" 16.9.1. Available commands 16.9.2. Subshell and completion mode 16.9.3. Unix like environment Expand section "16.9.3. Unix like environment" Collapse section "16.9.3. Unix like environment" 16.9.3.1. Help or man 16.9.3.2. Completion 16.9.3.3. Alias 16.9.3.4. Key binding 16.9.3.5. Pipe 16.9.3.6. Grep, more, find, … 16.9.3.7. Scripting 16.9.4. Security 16.10. Provisioning Expand section "16.10. Provisioning" Collapse section "16.10. Provisioning" 16.10.1. Application 16.10.2. OSGi 16.10.3. Feature and resolver 16.10.4. Features repositories 16.10.5. Boot features 16.10.6. Features upgrade 16.10.7. Overrides 16.10.8. Feature bundles Expand section "16.10.8. Feature bundles" Collapse section "16.10.8. Feature bundles" 16.10.8.1. Start Level 16.10.8.2. Simulate, Start and stop 16.10.8.3. Dependency 16.10.9. Dependent features Expand section "16.10.9. Dependent features" Collapse section "16.10.9. Dependent features" 16.10.9.1. Feature prerequisites 16.10.10. Feature configurations 16.10.11. Feature configuration files Expand section "16.10.11. Feature configuration files" Collapse section "16.10.11. Feature configuration files" 16.10.11.1. Requirements 16.10.12. Commands Expand section "16.10.12. Commands" Collapse section "16.10.12. Commands" 16.10.12.1. feature:repo-list 16.10.12.2. feature:repo-add 16.10.12.3. feature:repo-refresh 16.10.12.4. feature:repo-remove 16.10.12.5. feature:list 16.10.12.6. feature:install 16.10.12.7. feature:start 16.10.12.8. feature:stop 16.10.12.9. feature:uninstall 16.10.13. Deployer 16.10.14. JMX FeatureMBean Expand section "16.10.14. JMX FeatureMBean" Collapse section "16.10.14. JMX FeatureMBean" 16.10.14.1. Attributes 16.10.14.2. Operations 16.10.14.3. Notifications 17. Using Remote Connections to Manage a Container Expand section "17. Using Remote Connections to Manage a Container" Collapse section "17. Using Remote Connections to Manage a Container" 17.1. Configuring a Container for Remote Access Expand section "17.1. Configuring a Container for Remote Access" Collapse section "17.1. Configuring a Container for Remote Access" 17.1.1. Overview 17.1.2. Configuring a standalone container for remote access 17.2. Connecting and Disconnecting Remotely Expand section "17.2. Connecting and Disconnecting Remotely" Collapse section "17.2. Connecting and Disconnecting Remotely" 17.2.1. Connecting to a Standalone Container from a Remote Container Expand section "17.2.1. Connecting to a Standalone Container from a Remote Container" Collapse section "17.2.1. Connecting to a Standalone Container from a Remote Container" 17.2.1.1. Overview 17.2.1.2. Using the ssh:ssh console command 17.2.1.3. Disconnecting from a remote console 17.2.2. Connecting to a Container Using the Client Command-Line Utility Expand section "17.2.2. Connecting to a Container Using the Client Command-Line Utility" Collapse section "17.2.2. Connecting to a Container Using the Client Command-Line Utility" 17.2.2.1. Using the remote client 17.2.2.2. Remote client default credentials 17.2.2.3. Disconnecting from a remote client console 17.2.3. Connecting to a Container Using the SSH Command-Line Utility Expand section "17.2.3. Connecting to a Container Using the SSH Command-Line Utility" Collapse section "17.2.3. Connecting to a Container Using the SSH Command-Line Utility" 17.2.3.1. Overview 17.2.3.2. Prerequisites 17.2.3.3. Default key location 17.2.3.4. Creating a new SSH key pair 17.2.3.5. Installing the SSH public key in the container 17.2.3.6. Checking that public key authentication is supported 17.2.3.7. Adding the ssh Role to etc/keys.properties 17.2.3.8. Logging in using key-based SSH 17.3. Stopping a Remote Container 18. Building with Maven Expand section "18. Building with Maven" Collapse section "18. Building with Maven" 18.1. Maven Directory Structure Expand section "18.1. Maven Directory Structure" Collapse section "18.1. Maven Directory Structure" 18.1.1. Overview 18.1.2. Standard directory layout 18.1.3. pom.xml file 18.1.4. src and target directories 18.1.5. main and test directories 18.1.6. java directory 18.1.7. resources directory 18.1.8. Blueprint container 18.2. BOM file for Apache Karaf 19. Maven Indexer Plugin Expand section "19. Maven Indexer Plugin" Collapse section "19. Maven Indexer Plugin" 19.1. Log Expand section "19.1. Log" Collapse section "19.1. Log" 19.1.1. Configuration files 19.1.2. Commands Expand section "19.1.2. Commands" Collapse section "19.1.2. Commands" 19.1.2.1. log:clear 19.1.2.2. log:display 19.1.2.3. log:exception-display 19.1.2.4. log:get 19.1.2.5. log:log 19.1.2.6. log:set 19.1.2.7. log:tail 19.1.3. JMX LogMBean Expand section "19.1.3. JMX LogMBean" Collapse section "19.1.3. JMX LogMBean" 19.1.3.1. Attributes 19.1.3.2. Operations 19.1.4. Advanced configuration Expand section "19.1.4. Advanced configuration" Collapse section "19.1.4. Advanced configuration" 19.1.4.1. SIFT logging 19.1.4.2. Filters 19.1.4.3. Nested appenders 19.1.4.4. Error handlers 19.1.4.5. OSGi specific MDC attributes 19.1.4.6. Enhanced OSGi stack trace renderer 19.1.4.7. Custom appenders 20. Security Expand section "20. Security" Collapse section "20. Security" 20.1. Realms Expand section "20.1. Realms" Collapse section "20.1. Realms" 20.1.1. Users, groups, roles, and passwords Expand section "20.1.1. Users, groups, roles, and passwords" Collapse section "20.1.1. Users, groups, roles, and passwords" 20.1.1.1. Commands Expand section "20.1.1.1. Commands" Collapse section "20.1.1.1. Commands" 20.1.1.1.1. jaas:realm-list 20.1.1.1.2. jaas:realm-manage 20.1.1.1.3. jaas:user-list 20.1.1.1.4. jaas:user-add 20.1.1.1.5. jaas:user-delete 20.1.1.1.6. jaas:group-add 20.1.1.1.7. jaas:group-delete 20.1.1.1.8. jaas:group-role-add 20.1.1.1.9. jaas:group-role-delete 20.1.1.1.10. jaas:update 20.1.1.1.11. jaas:cancel 20.1.2. Passwords encryption 20.1.3. Managing authentication by key 20.1.4. RBAC Expand section "20.1.4. RBAC" Collapse section "20.1.4. RBAC" 20.1.4.1. OSGi services 20.1.4.2. Console 20.1.4.3. JMX 20.1.4.4. WebConsole 20.1.5. SecurityMBean Expand section "20.1.5. SecurityMBean" Collapse section "20.1.5. SecurityMBean" 20.1.5.1. Operations 20.1.6. Security providers Legal Notice Settings Close Language: 日本語 简体中文 한국어 English Language: 日本語 简体中文 한국어 English Format: Multi-page Single-page PDF Format: Multi-page Single-page PDF Language and Page Formatting Options Language: 日本語 简体中文 한국어 English Language: 日本語 简体中文 한국어 English Format: Multi-page Single-page PDF Format: Multi-page Single-page PDF Part II. User Guide This part contains configuration and preparation information for Apache Karaf on Red Hat Fuse. Previous Next