Skip to content

Commit f687c67

Browse files
format: updates menu, move install to getting started, adds architecture diagram
1 parent 6cbfbae commit f687c67

21 files changed

Lines changed: 645 additions & 259 deletions

File tree

content/api/javascript/quickstart.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ It can't:
2323

2424
## Create Cluster
2525

26-
ReactiveSearch is available as an Open Source Docker-based deployment. [Bring your own Elasticsearch cluster and self-host reactivesearch.io](/docs/hosting/open-source/).
26+
ReactiveSearch is available as an Open Source Docker-based deployment. [Bring your own Elasticsearch cluster and self-host reactivesearch.io](/docs/gettingstarted/install/).
2727

28-
Follow the [Docker quickstart guide](/docs/hosting/open-source/) to get your ReactiveSearch instance running, then copy the URL for use below.
28+
Follow the [Docker quickstart guide](/docs/gettingstarted/install/) to get your ReactiveSearch instance running, then copy the URL for use below.
2929

3030
## Creating an Index
3131

content/api/rest/overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ sidebar: 'api-reference'
1212

1313
Appbase.io provides an API gateway and control plane for Elasticsearch - with a mission of powering the most demanding application search use-cases.
1414

15-
To get started with the APIs, the first pre-requisite is to set up a ReactiveSearch instance. ReactiveSearch is available as an Open Source Docker-based deployment — [bring your own Elasticsearch cluster and self-host reactivesearch.io](/docs/hosting/open-source/).
15+
To get started with the APIs, the first pre-requisite is to set up a ReactiveSearch instance. ReactiveSearch is available as an Open Source Docker-based deployment — [bring your own Elasticsearch cluster and self-host reactivesearch.io](/docs/gettingstarted/install/).
1616

1717
## REST APIs
1818

content/docs/analytics/implement.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ In this page, you will learn about how to implement Appbase.io analytics for you
1414

1515
### Prerequite: Deploying Appbase.io
1616

17-
Appbase.io Analytics requires a deployment of appbase.io alongside your Elasticsearch cluster. ReactiveSearch is available as an Open Source Docker-based deployment. [Learn More](/docs/hosting/open-source/)
17+
Appbase.io Analytics requires a deployment of appbase.io alongside your Elasticsearch cluster. ReactiveSearch is available as an Open Source Docker-based deployment. [Learn More](/docs/gettingstarted/install/)
1818

1919
![Diagram showing how appbase.io works with Elasticsearch](/images/byoc.png)
2020

content/docs/data/model.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ As far as data modeling is concerned, it's Elasticsearch all the way!
2222

2323
## Cluster
2424

25-
A ReactiveSearch cluster is equivalent to an Elasticsearch cluster. ReactiveSearch is available in Open Source mode and can be deployed alongside [your own Elasticsearch cluster](/docs/hosting/open-source/) using Docker.
25+
A ReactiveSearch cluster is equivalent to an Elasticsearch cluster. ReactiveSearch is available in Open Source mode and can be deployed alongside [your own Elasticsearch cluster](/docs/gettingstarted/install/) using Docker.
2626

2727
Elasticsearch (or OpenSearch) is a distributed search and analytics engine built on top of Apache Lucene.
2828

Lines changed: 170 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,170 @@
1+
---
2+
title: 'Download and Install'
3+
meta_title: 'Download and Install ReactiveSearch'
4+
meta_description: 'Run ReactiveSearch in Open Source mode with Docker with an Elasticsearch or OpenSearch cluster'
5+
keywords:
6+
- clusters
7+
- appbaseio
8+
- appbase
9+
- Elasticsearch
10+
- Opensearch
11+
- docker
12+
- open source
13+
sidebar: 'docs'
14+
---
15+
16+
ReactiveSearch is available in Open Source mode as a Docker-based deployment. Run it alongside any Elasticsearch-compatible cluster you manage — whether that's AWS OpenSearch, Elastic Cloud, or a self-hosted Elasticsearch/OpenSearch instance.
17+
18+
![ReactiveSearch Architecture](/images/reactivesearch-architecture.svg)
19+
20+
This diagram highlights how ReactiveSearch works. It acts as an API gateway between your client applications and an underlying Elasticsearch or OpenSearch cluster. ReactiveSearch supercharges your search cluster with pipelines, search relevancy controls, AI search, actionable analytics, fine-grained access control, and a no-code UI builder.
21+
22+
## Quickstart
23+
24+
### Using Docker
25+
26+
The quickest way to get started is to run ReactiveSearch alongside Elasticsearch using Docker Compose. This requires [Docker](https://docs.docker.com/install/) to be installed on your system.
27+
28+
- **Step 1:** Clone the repository and start the services
29+
30+
```bash
31+
git clone https://github.com/appbaseio/reactivesearch-api-docker.git && cd reactivesearch-api-docker
32+
docker-compose -f docker-compose-with-elasticsearch.yaml up -d
33+
```
34+
35+
This starts Elasticsearch, ReactiveSearch API, Nginx (with TLS), Zinc (for internal logging), and Fluent Bit — all with a single command. 😎
36+
37+
- **Step 2:** Verify the service is running
38+
39+
Once the containers are up, verify that ReactiveSearch is accessible:
40+
41+
```bash
42+
curl http://localhost:8000 -u rs-admin-user:rs-password
43+
```
44+
45+
You should see a response like:
46+
47+
```json
48+
{
49+
"name": "elasticsearch",
50+
"cluster_name": "docker-cluster",
51+
"version": {
52+
"number": "9.3.0",
53+
"build_flavor": "default",
54+
"build_type": "docker",
55+
"build_hash": "17b451d8979a29e31935fe1eb901310350b30e62",
56+
"build_date": "2026-01-29T10:05:46.708397977Z",
57+
"build_snapshot": false,
58+
"lucene_version": "10.3.2",
59+
"minimum_wire_compatibility_version": "8.19.0",
60+
"minimum_index_compatibility_version": "8.0.0"
61+
},
62+
"tagline": "You Know, for Search"
63+
}
64+
```
65+
66+
This confirms that ReactiveSearch is running and connected to the Elasticsearch cluster.
67+
68+
- **Step 3:** Connect the ReactiveSearch Dashboard
69+
70+
Open [dash.reactivesearch.io](https://dash.reactivesearch.io) in your browser. Enter your ReactiveSearch URL (`http://localhost:8000`), username (`rs-admin-user`) and password (`rs-password`).
71+
72+
![ReactiveSearch Dashboard Login](/images/reactivesearch-dashboard-login.png)
73+
74+
- **Step 4:** Start building your search experience
75+
76+
After signing in, you'll land on the Cluster Overview page — your central hub for managing indices, configuring search relevancy, setting up analytics, and more.
77+
78+
![ReactiveSearch Dashboard Overview](/images/reactivesearch-dashboard-overview.png)
79+
80+
### Services overview
81+
82+
The dockerized setup is composed of the following services:
83+
84+
#### ReactiveSearch API
85+
86+
Allows you to access all ReactiveSearch features like search preview, actionable analytics and granular security with any Elasticsearch cluster hosted anywhere.
87+
88+
> **Note:** Make sure your ReactiveSearch container has complete access to Elasticsearch. You can use Elasticsearch URL with Basic Auth in configuring the dashboard or an IP-restricted Elasticsearch URL where the IP of your ReactiveSearch cluster is whitelisted.
89+
90+
#### Nginx
91+
92+
This service sets up a reverse proxy for the ReactiveSearch API. It also supports serving data with a TLS certificate, which is recommended for production.
93+
94+
For production deployments, replace the self-signed certificates in [nginx/certs](https://github.com/appbaseio/reactivesearch-api-docker/tree/master/nginx/certs) with your own TLS certificate and key (e.g. from [Let's Encrypt](https://letsencrypt.org/)). Update the file names in both the `docker-compose.yaml` and [nginx/default.conf](https://github.com/appbaseio/reactivesearch-api-docker/blob/master/nginx/default.conf) if needed.
95+
96+
#### Elasticsearch
97+
98+
An open-source single-node Elasticsearch cluster. This is optional — you can use the [docker compose file here](https://github.com/appbaseio/reactivesearch-api-docker/blob/master/docker-compose.yaml) to run ReactiveSearch without a bundled Elasticsearch and connect to your own cluster instead.
99+
100+
#### Zinc
101+
102+
A lightweight search engine used internally by ReactiveSearch for logging.
103+
104+
#### Fluent Bit
105+
106+
A log processor that forwards pipeline execution logs.
107+
108+
## Deploy with OpenSearch
109+
110+
To run ReactiveSearch alongside [OpenSearch](https://opensearch.org) instead of Elasticsearch, use the dedicated OpenSearch docker compose file:
111+
112+
```bash
113+
git clone https://github.com/appbaseio/reactivesearch-api-docker.git && cd reactivesearch-api-docker
114+
docker-compose -f docker-compose-with-opensearch.yaml up -d
115+
```
116+
117+
This sets up:
118+
119+
- **OpenSearch** (single-node, port `9200`) — an Apache 2.0 licensed search engine compatible with the Elasticsearch API
120+
- **ReactiveSearch API** — connected to OpenSearch via `ES_CLUSTER_URL=http://opensearch:9200`
121+
- **Nginx** — reverse proxy with TLS support
122+
- **Zinc** — lightweight search engine for internal logging
123+
- **Fluent Bit** — log forwarding for pipeline logs
124+
125+
The default credentials configured in the compose file are:
126+
- ReactiveSearch username: `rs-admin-user`
127+
- ReactiveSearch password: `rs-password`
128+
129+
You can change these by editing the environment variables in the compose file or via the configuration UI at http://localhost after startup.
130+
131+
### Connecting to AWS OpenSearch
132+
133+
To connect ReactiveSearch to an existing AWS OpenSearch cluster (instead of running a local one), modify the `ES_CLUSTER_URL` environment variable for the `reactivesearch-api` service in your docker compose file to point to your AWS OpenSearch endpoint:
134+
135+
```yaml
136+
reactivesearch-api:
137+
environment:
138+
- ES_CLUSTER_URL=https://your-aws-opensearch-endpoint.region.es.amazonaws.com
139+
```
140+
141+
> **Note:** Ensure your AWS OpenSearch domain's access policy allows connections from the machine running the ReactiveSearch Docker container. You can use IP whitelisting or fine-grained access control with a master user to secure the connection.
142+
143+
## Deploy with Elastic Cloud
144+
145+
To connect ReactiveSearch to your [Elastic Cloud](https://cloud.elastic.co) cluster, modify the `ES_CLUSTER_URL` environment variable to use your Elastic Cloud endpoint with credentials:
146+
147+
```bash
148+
git clone https://github.com/appbaseio/reactivesearch-api-docker.git && cd reactivesearch-api-docker
149+
docker-compose up -d
150+
```
151+
152+
Edit the `docker-compose.yaml` (or use the configuration UI after startup) and set:
153+
154+
```yaml
155+
reactivesearch-api:
156+
environment:
157+
- ES_CLUSTER_URL=https://username:password@your-elastic-cloud-endpoint.es.cloud.es.io:9243
158+
```
159+
160+
### Setting up Elastic Cloud credentials
161+
162+
1. Log in to [Elastic Cloud](https://cloud.elastic.co/home) and open your deployment
163+
2. Navigate to Kibana → Management → Security → Users
164+
3. Create a new user (e.g. `reactivesearch-connect`) with a **superuser** role
165+
4. Construct the URL as `https://<username>:<password>@<elasticsearch-endpoint>`
166+
5. Use this URL as the `ES_CLUSTER_URL` value
167+
168+
> **Why is a `superuser` role needed?** ReactiveSearch creates and manages system indices within your Elastic Cloud cluster for recording analytics, storing query rules, search relevance preferences, logs and more. Other roles don't allow access to these indices.
169+
170+
> ReactiveSearch connects to your Elastic Cloud cluster from a private environment and these credentials aren't exposed anywhere.

content/docs/gettingstarted/quickstart.md

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -26,33 +26,16 @@ With ReactiveSearch, you can:
2626
- Get improved search performance and throughput with [application layer caching](/docs/speed/cache-management/),
2727
- Build access controled search experiences with built-in Basic Auth or JWT based authentication, read/write access keys with granular ACLs, field level security, IP based rate limits, time to live - [read more over here](/docs/security/credentials/).
2828

29-
![ReactiveSearch.io Architecture](https://i.imgur.com/iTRCXe1.png)
29+
![ReactiveSearch Architecture](/images/reactivesearch-architecture.svg)
3030
**Image:** ReactiveSearch overview diagram
3131

3232
## Out of the Box Features
3333

3434
ReactiveSearch offers the following advantages over running your own Elasticsearch cluster.
3535

36-
![](https://i.imgur.com/8jz4Ssp.png)
37-
**Image:** ReactiveSearch feature stack overview
38-
3936
1. **Analytics** - Get rich insights and analytics for your search app.
4037
2. **Security** - Read/write access credentials, IP sources and HTTP Referers based restriction, Role based access control.
41-
3. **Zero Ops** - Automated provisioning, scaling, logging and daily backups so you can enjoy a peace of mind.
42-
4. **An Active Ecosystem** - From UI toolkits to build [search interfaces](https://opensource.reactivesearch.io/) and [map UIs](https://opensource.reactivesearch.io/geo-search), to the [leading Elasticsearch data browser](https://dejavu.reactivesearch.io/) to [backend data connectors](https://medium.appbase.io/abc-import-import-your-mongodb-sql-json-csv-data-into-elasticsearch-a202cafafc0d) to import data from SQL, MongoDB, JSON, CSV sources into Elasticsearch, we are actively working on open-standards to improve accessibility of building apps with ReactiveSearch.
43-
5. **No Vendor Lock-in** - Hosted APIs often come with a huge lock-in cost. ReactiveSearch.io is offered as [a hosted API](https://reactivesearch.io) as well as a [cloud native software](https://github.com/appbaseio/reactivesearch-api), offering a consistent experience without becoming a walled garden.
44-
45-
## Getting started with Docker
46-
47-
ReactiveSearch is available in Open Source mode as a Docker-based deployment. Bring your own Elasticsearch cluster and deploy ReactiveSearch alongside it.
38+
3. **An Active Ecosystem** - From UI toolkits to build [search interfaces](https://opensource.reactivesearch.io/) and [map UIs](https://opensource.reactivesearch.io/geo-search), to the [leading Elasticsearch data browser](https://dejavu.reactivesearch.io/) to [backend data connectors](https://medium.appbase.io/abc-import-import-your-mongodb-sql-json-csv-data-into-elasticsearch-a202cafafc0d) to import data from SQL, MongoDB, JSON, CSV sources into Elasticsearch, we are actively working on open-standards to improve accessibility of building apps with ReactiveSearch.
39+
4. **No Vendor Lock-in** - ReactiveSearch.io is offered as [a hosted API](https://reactivesearch.io) as well as a [cloud native software](https://github.com/appbaseio/reactivesearch-api), offering a consistent experience without becoming a walled garden.
4840

49-
<div class="grid-integrations-index mt6 mt6-l f8">
50-
<a class="bg-white shadow-2 box-shadow-hover shadow-2-hover br4 db flex flex-column justify-between items-center middarkgrey pa2 pt5 pb5 tdn tc" style="box-shadow: 0 0 5px rgba(0,0,0,.02), 0 5px 22px -8px rgba(0,0,0,.1); word-break: normal;cursor: pointer; padding: 2rem; height: 120px;width:120px;" href="/docs/hosting/open-source/">
51-
<img class="w10 mb1" src="/images/arc.svg" />
52-
Docker (Open Source)
53-
</a>
54-
</div>
5541

56-
| <p style="margin: 0px;" class="table-header-text">Deployment</p> | <p style="margin: 0px;" class="table-header-text">Description</p> |
57-
| ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
58-
| [Docker (Open Source)](/docs/hosting/open-source/) | Already have an Elasticsearch cluster with AWS OpenSearch, Elastic Cloud, or self-hosted? Deploy the ReactiveSearch Docker container alongside it. |

content/docs/hosting/byoc/index.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: 'Bring Your Own Cluster'
33
meta_title: 'Bring Your Own Cluster - ReactiveSearch'
4-
meta_description: 'Run ReactiveSearch in Open Source mode with Docker alongside your own Elasticsearch or OpenSearch cluster'
4+
meta_description: 'Run ReactiveSearch in Open Source mode with Docker with an Elasticsearch or OpenSearch cluster'
55
keywords:
66
- clusters
77
- appbaseio
@@ -11,10 +11,10 @@ keywords:
1111
- docker
1212
- open source
1313
sidebar: 'docs'
14-
redirect_to: '/docs/hosting/open-source/'
14+
redirect_to: '/docs/gettingstarted/install/'
1515
---
1616

17-
This page has moved. Please visit the [Open Source Deployment](/docs/hosting/open-source/) guide.
17+
This page has moved. Please visit the [Download and Install](/docs/gettingstarted/install/) guide.
1818

1919
ReactiveSearch is available in Open Source mode as a Docker-based deployment. Run it alongside any Elasticsearch-compatible cluster you manage — whether that's AWS OpenSearch, Elastic Cloud, or a self-hosted Elasticsearch/OpenSearch instance.
2020

content/docs/hosting/clusters.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ sidebar: 'docs'
1313

1414
> The ReactiveSearch hosted cloud service (Clusters) is no longer available. ReactiveSearch is now available in **Open Source mode** as a Docker-based deployment.
1515
16-
Please refer to the [Open Source Deployment guide](/docs/hosting/open-source/) to get started running ReactiveSearch alongside your own Elasticsearch or OpenSearch cluster.
16+
Please refer to the [Download and Install guide](/docs/gettingstarted/install/) to get started running ReactiveSearch alongside your own Elasticsearch or OpenSearch cluster.
1717

1818
- **A zero config app search experience**: With the cloud service, appbase.io deploys both Elasticsearch and appbase.io services in a performance-optimized fashion,
1919
- **16+ available regions**: Deploy your cluster in one of 16+ global regions on GCP or AWS,

0 commit comments

Comments
 (0)