From 538602a2ea5588f52d1ee44e7dd085c78e922550 Mon Sep 17 00:00:00 2001
From: April M <36110273+aimurphy@users.noreply.github.com>
Date: Fri, 5 Dec 2025 15:46:54 -0800
Subject: [PATCH] reuse
---
..._partial-docker-compose-down-and-prune.mdx | 9 ++
docs/docs/_partial-docker-compose-up.mdx | 7 +
...artial-docker-remove-and-cleanup-steps.mdx | 49 +++++++
docs/docs/_partial-docker-stop-all.mdx | 7 +
docs/docs/_partial-factory-reset-warning.mdx | 25 ++++
docs/docs/_partial-onboarding.mdx | 36 ++++-
docs/docs/core-components/ingestion.mdx | 36 ++---
docs/docs/core-components/knowledge.mdx | 12 +-
docs/docs/get-started/docker.mdx | 54 +++-----
docs/docs/get-started/install-uv.mdx | 2 +-
docs/docs/get-started/install-uvx.mdx | 4 +-
docs/docs/get-started/install.mdx | 4 +-
docs/docs/get-started/manage-services.mdx | 58 ++------
docs/docs/get-started/quickstart.mdx | 2 +-
docs/docs/get-started/reinstall.mdx | 127 ++----------------
docs/docs/get-started/tui.mdx | 2 +-
docs/docs/get-started/uninstall.mdx | 100 +-------------
docs/docs/get-started/upgrade.mdx | 27 ++--
docs/docs/reference/configuration.mdx | 14 +-
docs/docs/support/troubleshoot.mdx | 32 ++---
docs/docusaurus.config.js | 1 +
21 files changed, 238 insertions(+), 370 deletions(-)
create mode 100644 docs/docs/_partial-docker-compose-down-and-prune.mdx
create mode 100644 docs/docs/_partial-docker-compose-up.mdx
create mode 100644 docs/docs/_partial-docker-remove-and-cleanup-steps.mdx
create mode 100644 docs/docs/_partial-docker-stop-all.mdx
create mode 100644 docs/docs/_partial-factory-reset-warning.mdx
diff --git a/docs/docs/_partial-docker-compose-down-and-prune.mdx b/docs/docs/_partial-docker-compose-down-and-prune.mdx
new file mode 100644
index 00000000..179c0525
--- /dev/null
+++ b/docs/docs/_partial-docker-compose-down-and-prune.mdx
@@ -0,0 +1,9 @@
+```bash title="Docker"
+docker compose down --volumes --remove-orphans --rmi local
+docker system prune -f
+```
+
+```bash title="Podman"
+podman compose down --volumes --remove-orphans --rmi local
+podman system prune -f
+```
\ No newline at end of file
diff --git a/docs/docs/_partial-docker-compose-up.mdx b/docs/docs/_partial-docker-compose-up.mdx
new file mode 100644
index 00000000..535effb3
--- /dev/null
+++ b/docs/docs/_partial-docker-compose-up.mdx
@@ -0,0 +1,7 @@
+```bash title="Docker"
+docker compose up -d
+```
+
+```bash title="Podman"
+podman compose up -d
+```
\ No newline at end of file
diff --git a/docs/docs/_partial-docker-remove-and-cleanup-steps.mdx b/docs/docs/_partial-docker-remove-and-cleanup-steps.mdx
new file mode 100644
index 00000000..ccc91713
--- /dev/null
+++ b/docs/docs/_partial-docker-remove-and-cleanup-steps.mdx
@@ -0,0 +1,49 @@
+2. Remove all containers, including stopped containers:
+
+ ```bash title="Docker"
+ docker rm --force $(docker ps -aq)
+ ```
+
+ ```bash title="Podman"
+ podman rm --all --force
+ ```
+
+3. Remove all images:
+
+ ```bash title="Docker"
+ docker rmi --force $(docker images -q)
+ ```
+
+ ```bash title="Podman"
+ podman rmi --all --force
+ ```
+
+4. Remove all volumes:
+
+ ```bash title="Docker"
+ docker volume prune --force
+ ```
+
+ ```bash title="Podman"
+ podman volume prune --force
+ ```
+
+5. Remove all networks except the default network:
+
+ ```bash title="Docker"
+ docker network prune --force
+ ```
+
+ ```bash title="Podman"
+ podman network prune --force
+ ```
+
+6. Clean up any leftover data:
+
+ ```bash title="Docker"
+ docker system prune --all --force --volumes
+ ```
+
+ ```bash title="Podman"
+ podman system prune --all --force --volumes
+ ```
\ No newline at end of file
diff --git a/docs/docs/_partial-docker-stop-all.mdx b/docs/docs/_partial-docker-stop-all.mdx
new file mode 100644
index 00000000..3fbf17f9
--- /dev/null
+++ b/docs/docs/_partial-docker-stop-all.mdx
@@ -0,0 +1,7 @@
+```bash title="Docker"
+docker stop $(docker ps -q)
+```
+
+```bash title="Podman"
+podman stop --all
+```
\ No newline at end of file
diff --git a/docs/docs/_partial-factory-reset-warning.mdx b/docs/docs/_partial-factory-reset-warning.mdx
new file mode 100644
index 00000000..582125fb
--- /dev/null
+++ b/docs/docs/_partial-factory-reset-warning.mdx
@@ -0,0 +1,25 @@
+:::warning
+This is a destructive action that does the following:
+
+* Destroys all OpenRAG containers, volumes, and local images with `docker compose down --volumes --remove-orphans --rmi local`.
+* Prunes any additional Docker objects with `docker system prune -f`.
+* Deletes the contents of OpenRAG's `config` and `./opensearch-data` directories.
+* Deletes the `conversations.json` file.
+
+
Destroyed containers and deleted data are lost and cannot be recovered after running this operation.
+
+This operation _doesn't_ remove the `.env` file or the contents of the `./openrag-documents` directory.
+:::
+
+
\ No newline at end of file
diff --git a/docs/docs/_partial-onboarding.mdx b/docs/docs/_partial-onboarding.mdx
index ca8a994f..feca9955 100644
--- a/docs/docs/_partial-onboarding.mdx
+++ b/docs/docs/_partial-onboarding.mdx
@@ -33,7 +33,13 @@ Anthropic doesn't provide embedding models. If you select Anthropic for your lan
4. Select a provider for embeddings, provide the required information, and then select the embedding model you want to use.
For information about another provider's credentials and settings, see the instructions for that provider.
-5. Continue through the overview slides for a brief introduction to OpenRAG, or click **Skip overview**.
+5. Click **Complete**.
+
+ After you configure the embedding model, OpenRAG uses your credentials and models to ingest some [initial documents](/knowledge#default-documents). This tests the connection, and it allows you to ask OpenRAG about itself in the [**Chat**](/chat).
+ If there is a problem with the model configuration, an error occurs and you are redirected back to application onboarding.
+ Verify that the credential is valid and has access to the selected model, and then click **Complete** to retry ingestion.
+
+6. Continue through the overview slides for a brief introduction to OpenRAG, or click **Skip overview**.
The overview demonstrates some basic functionality that is covered in the [quickstart](/quickstart#chat-with-documents) and in other parts of the OpenRAG documentation.
@@ -48,7 +54,13 @@ The overview demonstrates some basic functionality that is covered in the [quick
4. Select a provider for embeddings, provide the required information, and then select the embedding model you want to use.
For information about another provider's credentials and settings, see the instructions for that provider.
-5. Continue through the overview slides for a brief introduction to OpenRAG, or click **Skip overview**.
+5. Click **Complete**.
+
+ After you configure the embedding model, OpenRAG uses your credentials and models to ingest some [initial documents](/knowledge#default-documents). This tests the connection, and it allows you to ask OpenRAG about itself in the [**Chat**](/chat).
+ If there is a problem with the model configuration, an error occurs and you are redirected back to application onboarding.
+ Verify that the credentials are valid and have access to the selected model, and then click **Complete** to retry ingestion.
+
+6. Continue through the overview slides for a brief introduction to OpenRAG, or click **Skip overview**.
The overview demonstrates some basic functionality that is covered in the [quickstart](/quickstart#chat-with-documents) and in other parts of the OpenRAG documentation.
@@ -76,12 +88,20 @@ However, `gpt-oss:20b` uses 16GB of RAM, so consider using Ollama Cloud or runni
If the connection succeeds, OpenRAG populates the model lists with the server's available models.
-3. Select the **Embedding Model** and **Language Model** your Ollama server is running.
+3. Select the model that your Ollama server is running.
- To use different providers for these models, you must configure both providers, and select the relevant model for each provider.
+ Language model and embedding model selections are independent.
+ You can use the same or different servers for each model.
+
+ To use different providers for each model, you must configure both providers, and select the relevant model for each provider.
4. Click **Complete**.
+ After you configure the embedding model, OpenRAG uses the address and models to ingest some [initial documents](/knowledge#default-documents). This tests the connection, and it allows you to ask OpenRAG about itself in the [**Chat**](/chat).
+ If there is a problem with the model configuration, an error occurs and you are redirected back to application onboarding.
+ Verify that the server address is valid, and that the selected model is running on the server.
+ Then, click **Complete** to retry ingestion.
+
5. Continue through the overview slides for a brief introduction to OpenRAG, or click **Skip overview**.
The overview demonstrates some basic functionality that is covered in the [quickstart](/quickstart#chat-with-documents) and in other parts of the OpenRAG documentation.
@@ -99,7 +119,13 @@ The overview demonstrates some basic functionality that is covered in the [quick
4. Select a provider for embeddings, provide the required information, and then select the embedding model you want to use.
For information about another provider's credentials and settings, see the instructions for that provider.
-5. Continue through the overview slides for a brief introduction to OpenRAG, or click **Skip overview**.
+5. Click **Complete**.
+
+ After you configure the embedding model, OpenRAG uses your credentials and models to ingest some [initial documents](/knowledge#default-documents). This tests the connection, and it allows you to ask OpenRAG about itself in the [**Chat**](/chat).
+ If there is a problem with the model configuration, an error occurs and you are redirected back to application onboarding.
+ Verify that the credential is valid and has access to the selected model, and then click **Complete** to retry ingestion.
+
+6. Continue through the overview slides for a brief introduction to OpenRAG, or click **Skip overview**.
The overview demonstrates some basic functionality that is covered in the [quickstart](/quickstart#chat-with-documents) and in other parts of the OpenRAG documentation.
diff --git a/docs/docs/core-components/ingestion.mdx b/docs/docs/core-components/ingestion.mdx
index d5210fcf..9fe95857 100644
--- a/docs/docs/core-components/ingestion.mdx
+++ b/docs/docs/core-components/ingestion.mdx
@@ -8,6 +8,8 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import PartialTempKnowledge from '@site/docs/_partial-temp-knowledge.mdx';
import PartialIngestionFlow from '@site/docs/_partial-ingestion-flow.mdx';
+import PartialDockerComposeUp from '@site/docs/_partial-docker-compose-up.mdx';
+import PartialDockerStopAll from '@site/docs/_partial-docker-stop-all.mdx';
Upload documents to your [OpenRAG OpenSearch instance](/knowledge) to populate your knowledge base with unique content, such as your own company documents, research papers, or websites.
Documents are processed through OpenRAG's knowledge ingestion flows with Docling.
@@ -62,7 +64,7 @@ Before users can connect their own cloud storage accounts, you must configure th
To enable multiple connectors, you must register an app and generate credentials for each provider.
-
+
If you use the [Terminal User Interface (TUI)](/tui) to manage your OpenRAG services, enter OAuth credentials in the **Advanced Setup** menu.
You can do this during [installation](/install#setup), or you can add the credentials afterwards:
@@ -86,25 +88,15 @@ These are the URLs your OAuth provider will redirect back to after users authent
You should be prompted to sign in to your OAuth provider before being redirected to your OpenRAG instance.
-
+
If you [installed OpenRAG with self-managed services](/docker), set OAuth credentials in the `.env` file for Docker Compose.
-You can do this during [initial set up](/docker#install-openrag-with-docker-compose), or you can add the credentials afterwards:
+You can do this during [initial set up](/docker#setup), or you can add the credentials afterwards:
-1. Stop your OpenRAG deployment:
+1. Stop all OpenRAG containers:
- * Docker:
-
- ```bash
- docker stop $(docker ps -q)
- ```
-
- * Podman:
-
- ```bash
- podman stop --all
- ```
+
2. Edit the `.env` file for Docker Compose to add the OAuth credentials for the cloud storage providers that you want to use:
@@ -131,19 +123,9 @@ You can do this during [initial set up](/docker#install-openrag-with-docker-comp
3. Save the `.env` file.
-4. Restart your OpenRAG deployment:
+4. Restart your OpenRAG containers:
- * Docker:
-
- ```bash
- docker compose up -d
- ```
-
- * Podman:
-
- ```bash
- podman compose up -d
- ```
+
diff --git a/docs/docs/core-components/knowledge.mdx b/docs/docs/core-components/knowledge.mdx
index cfb2715c..09ce6d7d 100644
--- a/docs/docs/core-components/knowledge.mdx
+++ b/docs/docs/core-components/knowledge.mdx
@@ -24,8 +24,14 @@ The **Knowledge** page lists the documents OpenRAG has ingested into your OpenSe
To explore the raw contents of your knowledge base, click **Knowledge** to get a list of all ingested documents.
Click a document to view the chunks produced from splitting the document during ingestion.
-By default, OpenRAG includes some initial documents about OpenRAG. You can use these documents to ask OpenRAG about itself, and to test the [**Chat**](/chat) feature before uploading your own documents.
-If you [delete these documents](#delete-knowledge), you won't be able to ask OpenRAG about itself and it's own functionality.
+### Default documents {#default-documents}
+
+By default, OpenRAG includes some initial documents about OpenRAG.
+These documents are ingested automatically during [application onboarding](/install#application-onboarding).
+
+You can use these documents to ask OpenRAG about itself, and to test the [**Chat**](/chat) feature before uploading your own documents.
+
+If you [delete](#delete-knowledge) these documents, you won't be able to ask OpenRAG about itself and it's own functionality.
It is recommended that you keep these documents, and use [filters](/knowledge-filters) to separate them from your other knowledge.
## OpenSearch authentication and document access {#auth}
@@ -99,7 +105,7 @@ You can use either Docling Serve or OpenRAG's built-in Docling ingestion pipelin
* **Docling Serve ingestion**: By default, OpenRAG uses [Docling Serve](https://github.com/docling-project/docling-serve).
This means that OpenRAG starts a `docling serve` process on your local machine and runs Docling ingestion through an API service.
-* **Built-in Docling ingestion**: If you want to use OpenRAG's built-in Docling ingestion pipeline instead of the separate Docling Serve service, set `DISABLE_INGEST_WITH_LANGFLOW=true` in your [OpenRAG environment variables](/reference/configuration#document-processing).
+* **Built-in Docling ingestion**: If you want to use OpenRAG's built-in Docling ingestion pipeline instead of the separate Docling Serve service, set `DISABLE_INGEST_WITH_LANGFLOW=true` in your [OpenRAG environment variables](/reference/configuration#document-processing-settings).
The built-in pipeline uses the Docling processor directly instead of through the Docling Serve API.
diff --git a/docs/docs/get-started/docker.mdx b/docs/docs/get-started/docker.mdx
index e5ea9673..8121e4da 100644
--- a/docs/docs/get-started/docker.mdx
+++ b/docs/docs/get-started/docker.mdx
@@ -26,7 +26,7 @@ Use this installation method if you don't want to [use the Terminal User Interfa
-## Prepare your deployment
+## Prepare your deployment {#setup}
1. Clone the OpenRAG repository:
@@ -118,47 +118,35 @@ Both files deploy the same services.
* [`docker-compose.yml`](https://github.com/langflow-ai/openrag/blob/main/docker-compose.yml): If your host machine has an NVIDIA GPU with CUDA support and compatible NVIDIA drivers, you can use this file to deploy OpenRAG with accelerated processing.
- * Docker:
+ ```bash title="Docker"
+ docker compose build
+ docker compose up -d
+ ```
- ```bash
- docker compose build
- docker compose up -d
- ```
-
- * Podman Compose:
-
- ```bash
- podman compose build
- podman compose up -d
- ```
+ ```bash title="Podman"
+ podman compose build
+ podman compose up -d
+ ```
* [`docker-compose-cpu.yml`](https://github.com/langflow-ai/openrag/blob/main/docker-compose-cpu.yml): If your host machine doesn't have NVIDIA GPU support, use this file for a CPU-only OpenRAG deployment.
- * Docker:
+ ```bash title="Docker"
+ docker compose -f docker-compose-cpu.yml up -d
+ ```
- ```bash
- docker compose -f docker-compose-cpu.yml up -d
- ```
-
- * Podman Compose:
-
- ```bash
- podman compose -f docker-compose-cpu.yml up -d
- ```
+ ```bash title="Podman"
+ podman compose -f docker-compose-cpu.yml up -d
+ ```
4. Wait for the OpenRAG containers to start, and then confirm that all containers are running:
- * Docker Compose:
+ ```bash title="Docker"
+ docker compose ps
+ ```
- ```bash
- docker compose ps
- ```
-
- * Podman Compose:
-
- ```bash
- podman compose ps
- ```
+ ```bash title="Podman"
+ podman compose ps
+ ```
The OpenRAG Docker Compose files deploy the following containers:
diff --git a/docs/docs/get-started/install-uv.mdx b/docs/docs/get-started/install-uv.mdx
index a1d6bd83..1b6c8dfc 100644
--- a/docs/docs/get-started/install-uv.mdx
+++ b/docs/docs/get-started/install-uv.mdx
@@ -108,7 +108,7 @@ The TUI guides you through the initial configuration process before you start th
Your [OpenRAG configuration](/reference/configuration) is stored in a `.env` file that is created automatically in the Python project where you installed OpenRAG.
If OpenRAG detects an existing `.env` file, the TUI automatically populates those values during setup and onboarding.
-Container definitions are stored in a `docker-compose.yml` file in the same directory.
+Container definitions are stored in the `docker-compose` files in the same directory.
diff --git a/docs/docs/get-started/install-uvx.mdx b/docs/docs/get-started/install-uvx.mdx
index 05a9c563..87af4f2f 100644
--- a/docs/docs/get-started/install-uvx.mdx
+++ b/docs/docs/get-started/install-uvx.mdx
@@ -72,9 +72,9 @@ The TUI guides you through the initial configuration process before you start th
Your [OpenRAG configuration](/reference/configuration) is stored in a `.env` file that is created automatically in the OpenRAG installation directory.
If OpenRAG detects an existing `.env` file, the TUI automatically populates those values during setup and onboarding.
-Container definitions are stored in a `docker-compose.yml` file in the OpenRAG installation directory.
+Container definitions are stored in the `docker-compose` files in the OpenRAG installation directory.
-With `uvx`, the OpenRAG `.env` and `docker-compose.yml` files are stored in the directory where you invoked OpenRAG.
+With `uvx`, the OpenRAG `.env` and `docker-compose` files are stored in the directory where you invoked OpenRAG.
diff --git a/docs/docs/get-started/install.mdx b/docs/docs/get-started/install.mdx
index c012394e..1c09e1ba 100644
--- a/docs/docs/get-started/install.mdx
+++ b/docs/docs/get-started/install.mdx
@@ -78,9 +78,9 @@ The TUI guides you through the initial configuration process before you start th
Your [OpenRAG configuration](/reference/configuration) is stored in a `.env` file that is created automatically in the OpenRAG installation directory.
If OpenRAG detects an existing `.env` file, the TUI automatically populates those values during setup and onboarding.
-Container definitions are stored in a `docker-compose.yml` file in the OpenRAG installation directory.
+Container definitions are stored in the `docker-compose` files in the OpenRAG installation directory.
-Because the installer script uses `uvx`, the OpenRAG `.env` and `docker-compose.yml` files are stored in the directory where you ran the installer script.
+Because the installer script uses `uvx`, the OpenRAG `.env` and `docker-compose` files are stored in the directory where you ran the installer script.
diff --git a/docs/docs/get-started/manage-services.mdx b/docs/docs/get-started/manage-services.mdx
index c2f0b7a2..09cb8675 100644
--- a/docs/docs/get-started/manage-services.mdx
+++ b/docs/docs/get-started/manage-services.mdx
@@ -3,6 +3,10 @@ title: Manage OpenRAG containers and services
slug: /manage-services
---
+import PartialDockerComposeUp from '@site/docs/_partial-docker-compose-up.mdx';
+import PartialDockerComposeDownAndPrune from '@site/docs/_partial-docker-compose-down-and-prune.mdx';
+import PartialFactorResetWarning from '@site/docs/_partial-factory-reset-warning.mdx';
+
Service management is an essential part of maintaining your OpenRAG deployment.
Most OpenRAG services run in containers.
@@ -95,18 +99,7 @@ If you modified the built-in flows or created custom flows in your OpenRAG Langf
### Factory Reset with the TUI
-:::warning
-This is a destructive action that does the following:
-
-* Destroys all OpenRAG containers, volumes, and local images with `docker compose down --volumes --remove-orphans --rmi local`.
-* Prunes any additional Docker objects with `docker system prune -f`.
-* Deletes the contents of OpenRAG's `config` and `./opensearch-data` directories.
-* Deletes the `conversations.json` file.
-
-Destroyed containers and deleted data are lost and cannot be recovered after running this operation.
-
-This operation _doesn't_ remove the `.env` file or the contents of the `./openrag-documents` directory.
-:::
+
1. To destroy and recreate your OpenRAG containers, open the TUI's **Status** menu (3), and then click **Factory Reset**.
@@ -120,16 +113,13 @@ If you want to preserve customized flows, see [Export customized flows before re
The `.env` file, `config` directory, `./openrag-documents` directory, `./opensearch-data` directory, and the `conversations.json` file are preserved.
-* Docker Compose:
+```bash title="Docker"
+docker compose up --build --force-recreate --remove-orphans
+```
- ```bash
- docker compose up --build --force-recreate --remove-orphans
- ```
-* Podman Compose:
-
- ```bash
- podman compose up --build --force-recreate --remove-orphans
- ```
+```bash title="Podman"
+podman compose up --build --force-recreate --remove-orphans
+```
### Destroy and recreate self-managed containers
@@ -142,19 +132,7 @@ Destroyed containers and deleted data are lost and cannot be recovered after run
1. Destroy the containers, volumes, and local images, and then remove (prune) any additional Docker objects:
- * Docker Compose:
-
- ```bash
- docker compose down --volumes --remove-orphans --rmi local
- docker system prune -f
- ```
-
- * Podman Compose:
-
- ```bash
- podman compose down --volumes --remove-orphans --rmi local
- podman system prune -f
- ```
+
2. Optional: Remove data that wasn't deleted by the previous commands:
@@ -169,17 +147,7 @@ For more information, see [Deploy OpenRAG with self-managed services](/docker).
4. Recreate the containers:
- * Docker Compose:
-
- ```bash
- docker compose up -d
- ```
-
- * Podman Compose:
-
- ```bash
- podman compose up -d
- ```
+
5. Launch the OpenRAG app, and then repeat [application onboarding](/docker#application-onboarding).
diff --git a/docs/docs/get-started/quickstart.mdx b/docs/docs/get-started/quickstart.mdx
index 0c34da85..0e427fcb 100644
--- a/docs/docs/get-started/quickstart.mdx
+++ b/docs/docs/get-started/quickstart.mdx
@@ -68,7 +68,7 @@ The script installs OpenRAG dependencies, including Docker or Podman, and then i
```
Your [OpenRAG configuration](/reference/configuration) is stored in a `.env` file that is created automatically in the directory where you ran the installer script.
- Container definitions are stored in a `docker-compose.yml` file in the same directory.
+ Container definitions are stored in the `docker-compose` files in the same directory.
7. Under [**Native Services**](/manage-services), click **Start** to start the Docling service.
diff --git a/docs/docs/get-started/reinstall.mdx b/docs/docs/get-started/reinstall.mdx
index 8da926d1..c953fbef 100644
--- a/docs/docs/get-started/reinstall.mdx
+++ b/docs/docs/get-started/reinstall.mdx
@@ -3,6 +3,12 @@ title: Reinstall OpenRAG
slug: /reinstall
---
+import PartialDockerComposeUp from '@site/docs/_partial-docker-compose-up.mdx';
+import PartialDockerComposeDownAndPrune from '@site/docs/_partial-docker-compose-down-and-prune.mdx';
+import PartialDockerStopAll from '@site/docs/_partial-docker-stop-all.mdx';
+import PartialDockerRemoveAndCleanupSteps from '@site/docs/_partial-docker-remove-and-cleanup-steps.mdx';
+import PartialFactorResetWarning from '@site/docs/_partial-factory-reset-warning.mdx';
+
You can reset your OpenRAG deployment to its initial state by recreating the containers and deleting accessory data like the `.env` file and ingested documents.
:::warning
@@ -18,18 +24,7 @@ If you modified the built-in flows or created custom flows in your OpenRAG Langf
1. In the TUI's **Status** menu (3), click **Factory Reset** to destroy your OpenRAG containers and some related data.
- :::warning
- This is a destructive action that does the following:
-
- * Destroys all OpenRAG containers, volumes, and local images with `docker compose down --volumes --remove-orphans --rmi local`.
- * Prunes any additional Docker objects with `docker system prune -f`.
- * Deletes the contents of OpenRAG's `config` and `./opensearch-data` directories.
- * Deletes the `conversations.json` file.
-
- Destroyed containers and deleted data are lost and cannot be recovered after running this operation.
-
- This operation _doesn't_ remove the `.env` file or the contents of the `./openrag-documents` directory.
- :::
+
2. Exit the TUI with q.
@@ -50,19 +45,7 @@ Then, launch the OpenRAG app and repeat [application onboarding](/install#applic
1. Destroy the containers, volumes, and local images, and then remove (prune) any additional Podman objects:
- * Docker Compose:
-
- ```bash
- docker compose down --volumes --remove-orphans --rmi local
- docker system prune -f
- ```
-
- * Podman Compose:
-
- ```bash
- podman compose down --volumes --remove-orphans --rmi local
- podman system prune -f
- ```
+
2. Optional: Remove data that wasn't deleted by the previous commands:
@@ -77,17 +60,7 @@ For more information, see [Deploy OpenRAG with self-managed services](/docker).
4. Redeploy OpenRAG:
- * Docker Compose:
-
- ```bash
- docker compose up -d
- ```
-
- * Podman Compose:
-
- ```bash
- podman compose up -d
- ```
+
5. Launch the OpenRAG app, and then repeat [application onboarding](/docker#application-onboarding).
@@ -97,87 +70,9 @@ Use these commands for step-by-step container removal and cleanup:
1. Stop all running containers:
- * Docker:
+
- ```bash
- docker stop $(docker ps -q)
- ```
-
- * Podman:
-
- ```bash
- podman stop --all
- ```
-
-2. Remove all containers, including stopped containers:
-
- * Docker:
-
- ```bash
- docker rm --force $(docker ps -aq)
- ```
-
- * Podman:
-
- ```bash
- podman rm --all --force
- ```
-
-3. Remove all images:
-
- * Docker:
-
- ```bash
- docker rmi --force $(docker images -q)
- ```
-
- * Podman:
-
- ```bash
- podman rmi --all --force
- ```
-
-4. Remove all volumes:
-
- * Docker:
-
- ```bash
- docker volume prune --force
- ```
-
- * Podman:
-
- ```bash
- podman volume prune --force
- ```
-
-5. Remove all networks except the default network:
-
- * Docker:
-
- ```bash
- docker network prune --force
- ```
-
- * Podman:
-
- ```bash
- podman network prune --force
- ```
-
-6. Clean up any leftover data:
-
- * Docker:
-
- ```bash
- docker system prune --all --force --volumes
- ```
-
- * Podman:
-
- ```bash
- podman system prune --all --force --volumes
- ```
+
7. Optional: Remove data that wasn't deleted by the previous commands:
diff --git a/docs/docs/get-started/tui.mdx b/docs/docs/get-started/tui.mdx
index f5fbcb33..0965478b 100644
--- a/docs/docs/get-started/tui.mdx
+++ b/docs/docs/get-started/tui.mdx
@@ -8,7 +8,7 @@ The OpenRAG Terminal User Interface (TUI) provides a simplified and guided exper

If you install OpenRAG with the [automatic installer script](/install), [`uv`](/install-uv), or [`uvx`](/install-uvx), you use the TUI to manage your OpenRAG deployment.
-The TUI guides you through the initial setup, automatically manages your OpenRAG `.env` and `docker-compose.yml` files, and provides convenient access to [service management](/manage-services) controls.
+The TUI guides you through the initial setup, automatically manages your OpenRAG `.env` and `docker-compose` files, and provides convenient access to [service management](/manage-services) controls.
In contrast, when you [deploy OpenRAG with self-managed services](/docker), you must manually configure OpenRAG by preparing a `.env` file and using Docker or Podman commands to deploy and manage your OpenRAG services.
diff --git a/docs/docs/get-started/uninstall.mdx b/docs/docs/get-started/uninstall.mdx
index cad6e998..7c3ecedf 100644
--- a/docs/docs/get-started/uninstall.mdx
+++ b/docs/docs/get-started/uninstall.mdx
@@ -3,6 +3,10 @@ title: Remove OpenRAG
slug: /uninstall
---
+import PartialDockerComposeDownAndPrune from '@site/docs/_partial-docker-compose-down-and-prune.mdx';
+import PartialDockerStopAll from '@site/docs/_partial-docker-stop-all.mdx';
+import PartialDockerRemoveAndCleanupSteps from '@site/docs/_partial-docker-remove-and-cleanup-steps.mdx';
+
:::tip
If you want to reset your OpenRAG containers without removing OpenRAG entirely, see [Reset OpenRAG containers](/manage-services) and [Reinstall OpenRAG](/reinstall).
:::
@@ -21,19 +25,7 @@ For self-managed services, destroy the containers, prune any additional Docker o
1. Destroy the containers, volumes, and local images, and then remove (prune) any additional Docker objects:
- * Docker Compose:
-
- ```bash
- docker compose down --volumes --remove-orphans --rmi local
- docker system prune -f
- ```
-
- * Podman Compose:
-
- ```bash
- podman compose down --volumes --remove-orphans --rmi local
- podman system prune -f
- ```
+
2. Remove data that wasn't deleted by the previous commands:
@@ -55,87 +47,9 @@ Use these commands for step-by-step container removal and cleanup:
1. Stop all running containers:
- * Docker:
+
- ```bash
- docker stop $(docker ps -q)
- ```
-
- * Podman:
-
- ```bash
- podman stop --all
- ```
-
-2. Remove all containers, including stopped containers:
-
- * Docker:
-
- ```bash
- docker rm --force $(docker ps -aq)
- ```
-
- * Podman:
-
- ```bash
- podman rm --all --force
- ```
-
-3. Remove all images:
-
- * Docker:
-
- ```bash
- docker rmi --force $(docker images -q)
- ```
-
- * Podman:
-
- ```bash
- podman rmi --all --force
- ```
-
-4. Remove all volumes:
-
- * Docker:
-
- ```bash
- docker volume prune --force
- ```
-
- * Podman:
-
- ```bash
- podman volume prune --force
- ```
-
-5. Remove all networks except the default network:
-
- * Docker:
-
- ```bash
- docker network prune --force
- ```
-
- * Podman:
-
- ```bash
- podman network prune --force
- ```
-
-6. Clean up any leftover data:
-
- * Docker:
-
- ```bash
- docker system prune --all --force --volumes
- ```
-
- * Podman:
-
- ```bash
- podman system prune --all --force --volumes
- ```
+
7. Remove data that wasn't deleted by the previous commands:
diff --git a/docs/docs/get-started/upgrade.mdx b/docs/docs/get-started/upgrade.mdx
index 1274a6fa..dd409e65 100644
--- a/docs/docs/get-started/upgrade.mdx
+++ b/docs/docs/get-started/upgrade.mdx
@@ -29,7 +29,7 @@ In the **Status** menu, click **Stop Services**.
3. Upgrade the OpenRAG Python package to the latest version from [PyPI](https://pypi.org/project/openrag/).
The commands to upgrade the package depend on how you installed OpenRAG.
-
+
Use these steps to upgrade the Python package if you installed OpenRAG using the [installer script](/install) or [`uvx`](/install-uvx):
@@ -130,23 +130,18 @@ The commands to upgrade the package depend on how you installed OpenRAG.
## Upgrade self-managed containers
-By default, OpenRAG's `docker-compose.yml` file pulls the latest container images that are available when you run `docker compose up -d`.
+To fetch and apply the latest container images while preserving your OpenRAG data, run the commands for your container management tool.
+By default, OpenRAG's `docker-compose` files pull the latest container images.
-To fetch and apply the latest container images while preserving your OpenRAG data, run the commands for your container management tool:
+```bash title="Docker"
+docker compose pull
+docker compose up -d --force-recreate
+```
-* Docker Compose:
-
- ```bash
- docker compose pull
- docker compose up -d --force-recreate
- ```
-
-* Podman Compose:
-
- ```bash
- podman compose pull
- podman compose up -d --force-recreate
- ```
+```bash title="Podman"
+podman compose pull
+podman compose up -d --force-recreate
+```
## See also
diff --git a/docs/docs/reference/configuration.mdx b/docs/docs/reference/configuration.mdx
index 8221786d..bfc3b10d 100644
--- a/docs/docs/reference/configuration.mdx
+++ b/docs/docs/reference/configuration.mdx
@@ -3,6 +3,8 @@ title: Environment variables
slug: /reference/configuration
---
+import PartialDockerComposeUp from '@site/docs/_partial-docker-compose-up.mdx';
+
OpenRAG recognizes environment variables from the following sources:
* [Environment variables](#configure-environment-variables): Values set in the `.env` file.
@@ -36,17 +38,19 @@ For example, with self-managed services, do the following:
1. Stop the deployment:
- ```bash
+ ```bash title="Docker"
docker compose down
```
+ ```bash title="Podman"
+ podman compose down
+ ```
+
2. Edit your `.env` file.
3. Redeploy OpenRAG:
- ```bash
- docker compose up -d
- ```
+
4. Restart the Docling service.
@@ -76,7 +80,7 @@ Some of these variables are immutable and can only be changed by redeploying Ope
| `WATSONX_ENDPOINT` | Not set | Custom provider endpoint for the IBM watsonx.ai model provider. |
| `WATSONX_PROJECT_ID` | Not set | Project ID for the IBM watsonx.ai model provider. |
-### Document processing settings
+### Document processing settings {#document-processing-settings}
Control how OpenRAG [processes and ingests documents](/ingestion) into your knowledge base.
diff --git a/docs/docs/support/troubleshoot.mdx b/docs/docs/support/troubleshoot.mdx
index ef386158..4870b6eb 100644
--- a/docs/docs/support/troubleshoot.mdx
+++ b/docs/docs/support/troubleshoot.mdx
@@ -107,31 +107,23 @@ To resolve this issue, do the following:
1. Stop the Langflow container:
- * Docker:
+ ```bash title="Docker"
+ docker stop langflow
+ ```
- ```bash
- docker stop langflow
- ```
-
- * Podman:
-
- ```bash
- podman stop langflow
- ```
+ ```bash title="Podman"
+ podman stop langflow
+ ```
2. Remove the Langflow container:
- * Docker:
+ ```bash title="Docker"
+ docker rm langflow --force
+ ```
- ```bash
- docker rm langflow --force
- ```
-
- * Podman:
-
- ```bash
- podman rm langflow --force
- ```
+ ```bash title="Podman"
+ podman rm langflow --force
+ ```
2. Retry the [upgrade](/upgrade).
diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js
index 4f75ae2c..839ca12f 100644
--- a/docs/docusaurus.config.js
+++ b/docs/docusaurus.config.js
@@ -124,6 +124,7 @@ const config = {
prism: {
theme: prismThemes.github,
darkTheme: prismThemes.dracula,
+ additionalLanguages: ['bash', 'docker', 'yaml'],
},
mermaid: {
theme: {light: 'neutral', dark: 'forest'},