This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch feature/CAMEL-23722-cli-docs-restructure in repository https://gitbox.apache.org/repos/asf/camel.git
commit 4e5a8fe1899d3ff3736377294cf62b3e9832a8fc Author: Claus Ibsen <[email protected]> AuthorDate: Tue Jun 9 17:43:45 2026 +0200 CAMEL-23722: Tighten Installation Options page Remove docker/podman duplication, improve prose, rename section headings for clarity. Co-Authored-By: Claude Opus 4.6 <[email protected]> Signed-off-by: Claus Ibsen <[email protected]> --- .../ROOT/pages/camel-jbang-installation.adoc | 102 +++++++-------------- 1 file changed, 31 insertions(+), 71 deletions(-) diff --git a/docs/user-manual/modules/ROOT/pages/camel-jbang-installation.adoc b/docs/user-manual/modules/ROOT/pages/camel-jbang-installation.adoc index 2d67c9c696c6..c8bef74971f9 100644 --- a/docs/user-manual/modules/ROOT/pages/camel-jbang-installation.adoc +++ b/docs/user-manual/modules/ROOT/pages/camel-jbang-installation.adoc @@ -1,62 +1,50 @@ = Camel CLI - Installation Options -This page covers alternative ways to install and run the Camel CLI — -version-pinned installs, offline-safe setups, and container images. +Alternative ways to install the Camel CLI — pinning a specific version, +offline-safe setups, and running from a container image. For the standard installation, see xref:camel-jbang-getting-started.adoc[Getting Started]. -== Installing a specific Camel CLI version +== Installing a specific version -By default, Camel CLI installs the latest release, which may not be the desired version. - -To use a specific version then you need to provide these when installing from jbang such as 4.14.1: +By default, `jbang app install` installs the latest Camel release. +To pin a specific version (for example 4.14.1): [source,bash] ---- jbang app install --force --fresh -Dcamel.jbang.version=4.14.1 -Dcamel-kamelets.version=4.14.1 camel@apache/camel ---- -TIP: You can use `--force` and `--fresh` to tell JBang to force installing the version and refresh downloading, -so no previous downloaded cache etc. may cause a problem. - -IMPORTANT: From Camel 4.17 onwards then Kamelets are optional, and only downloaded on demand. You define the version -of kamelets via `--kamelets-version` parameter to `camel run` or can pre-configure the version via `camel config set kamelets-version=4.17.0`. - -== Installing Offline-Safe or Version-Pinned Camel CLI - -When installing Camel CLI using `jbang app install`, JBang will occasionally check -upstream sources and update the installed application automatically. This may be undesirable if you -want to ensure your Camel CLI installation remains on a specific Camel release. +The `--force` and `--fresh` flags ensure JBang bypasses its download cache. -The following options allow you to install Camel CLI in a way that prevents unexpected upgrades. +IMPORTANT: From Camel 4.17, Kamelets are optional and downloaded on demand. +Set the version with `--kamelets-version` on `camel run`, or pre-configure it: +`camel config set kamelets-version=4.17.0`. -=== Option 1: Pin by Installing from a Local `CamelJBang.java` +== Preventing automatic upgrades -This approach pins the Camel version directly in the source file used to install the application. +JBang occasionally checks upstream sources and may auto-update the installed CLI. +If you need a stable, repeatable installation, use one of the options below. -1. Download the `CamelJBang.java` file to your local machine: -+ -[source] ----- -https://github.com/apache/camel/blob/main/dsl/camel-jbang/camel-jbang-main/dist/CamelJBang.java ----- +=== Option 1: Pin from a local `CamelJBang.java` -2. Edit the `CamelJBang.java` file and set the Camel version you want to use. +This is the most deterministic approach — best for fully offline environments. -3. Install Camel CLI locally: +1. Download https://github.com/apache/camel/blob/main/dsl/camel-jbang/camel-jbang-main/dist/CamelJBang.java[`CamelJBang.java`] to your local machine. +2. Edit the file and set the Camel version you want. +3. Install from the local file: + [source,bash] ---- jbang app install CamelJBang.java ---- -4. After installation, the `CamelJBang.java` file can be deleted. +The file can be deleted after installation. -=== Option 2: Install from a Version-Pinned Catalog +=== Option 2: Pin from a version-tagged catalog -Another option is to install Camel CLI from a catalog tied to a specific Camel release tag. +Simpler than Option 1, but still prevents surprise upgrades: -Example: [source,bash] ---- CAMEL_VERSION="4.18.0" @@ -69,69 +57,41 @@ jbang app install --force --fresh \ camel@"${CAMEL_JBANG_CATALOG_URL}" ---- -In this example: - -* The catalog URL points to a specific Camel release tag. -* `-Dcamel.jbang.version` ensures the installed application uses that same Camel version. +The catalog URL points to a specific release tag, so JBang will not pull a newer version. -[NOTE] -==== -Option 1 provides the most deterministic installation and is best suited for fully offline-safe environments. +=== Option 3: Use the Camel Launcher -Option 2 offers a simpler installation while still ensuring the version is pinned to a specific Camel release. -==== +The xref:camel-jbang-launcher.adoc[Camel CLI Launcher] is a self-contained executable JAR +that runs without JBang entirely. -=== Option 3: Use Camel Launcher +== Container image -See xref:camel-jbang-launcher.adoc[Camel CLI Launcher] +The Camel CLI is also available as a container image on https://hub.docker.com/r/apache/camel-jbang/[Docker Hub]. -== Container Image +NOTE: All examples below use `docker`. Replace with `podman` if you prefer — the commands are identical. -There is also a container image available in https://hub.docker.com/r/apache/camel-jbang/[Dockerhub] +Pull the image: [source,bash] ---- docker pull apache/camel-jbang:4.21.0 ---- -or - -[source,bash] ----- -podman pull apache/camel-jbang:4.21.0 ----- - -Once you have the image in your local registry, you can run all the commands listed below by simple doing: +Verify it works: [source,bash] ---- docker run apache/camel-jbang:4.21.0 version ---- -or - -[source,bash] ----- -podman run apache/camel-jbang:4.21.0 version ----- - -This will print the following result: - -[source,bash] +[source] ---- Camel CLI version: 4.21.0 ---- -So running a simple route will be as easy as doing the following: +Run a route by mounting your local directory: [source,bash] ---- docker run -v .:/integrations apache/camel-jbang:4.21.0 run /integrations/example.yaml ---- - -or - -[source,bash] ----- -podman run -v .:/integrations apache/camel-jbang:4.21.0 run /integrations/example.yaml -----
