mirror of
https://git.mirrors.martin98.com/https://github.com/infiniflow/ragflow.git
synced 2025-04-22 14:10:01 +08:00
Add build image and launch from source in README (#2658)
### What problem does this PR solve? Move the build image and launch from source back to README. ### Type of change - [x] Documentation Update --------- Signed-off-by: Jin Hai <haijin.chn@gmail.com>
This commit is contained in:
parent
5a8ae4a289
commit
a411330b09
93
README.md
93
README.md
@ -42,6 +42,9 @@
|
|||||||
- 🔎 [System Architecture](#-system-architecture)
|
- 🔎 [System Architecture](#-system-architecture)
|
||||||
- 🎬 [Get Started](#-get-started)
|
- 🎬 [Get Started](#-get-started)
|
||||||
- 🔧 [Configurations](#-configurations)
|
- 🔧 [Configurations](#-configurations)
|
||||||
|
- 🪛 [Build the docker image without embedding models](#-build-the-docker-image-without-embedding-models)
|
||||||
|
- 🪚 [Build the docker image including embedding models](#-build-the-docker-image-including-embedding-models)
|
||||||
|
- 🔨 [Launch service from source for development](#-launch-service-from-source-for-development)
|
||||||
- 📚 [Documentation](#-documentation)
|
- 📚 [Documentation](#-documentation)
|
||||||
- 📜 [Roadmap](#-roadmap)
|
- 📜 [Roadmap](#-roadmap)
|
||||||
- 🏄 [Community](#-community)
|
- 🏄 [Community](#-community)
|
||||||
@ -166,12 +169,12 @@ Try our demo at [https://demo.ragflow.io](https://demo.ragflow.io).
|
|||||||
_The following output confirms a successful launch of the system:_
|
_The following output confirms a successful launch of the system:_
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
____ ______ __
|
____ ___ ______ ______ __
|
||||||
/ __ \ ____ _ ____ _ / ____// /____ _ __
|
/ __ \ / | / ____// ____// /____ _ __
|
||||||
/ /_/ // __ `// __ `// /_ / // __ \| | /| / /
|
/ /_/ // /| | / / __ / /_ / // __ \| | /| / /
|
||||||
/ _, _// /_/ // /_/ // __/ / // /_/ /| |/ |/ /
|
/ _, _// ___ |/ /_/ // __/ / // /_/ /| |/ |/ /
|
||||||
/_/ |_| \__,_/ \__, //_/ /_/ \____/ |__/|__/
|
/_/ |_|/_/ |_|\____//_/ /_/ \____/ |__/|__/
|
||||||
/____/
|
|
||||||
|
|
||||||
* Running on all addresses (0.0.0.0)
|
* Running on all addresses (0.0.0.0)
|
||||||
* Running on http://127.0.0.1:9380
|
* Running on http://127.0.0.1:9380
|
||||||
@ -208,6 +211,84 @@ Updates to the above configurations require a reboot of all containers to take e
|
|||||||
> $ docker-compose -f docker/docker-compose.yml up -d
|
> $ docker-compose -f docker/docker-compose.yml up -d
|
||||||
> ```
|
> ```
|
||||||
|
|
||||||
|
## 🪛 Build the Docker image without embedding models
|
||||||
|
|
||||||
|
This image is approximately 1 GB in size and relies on external LLM and embedding services.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/infiniflow/ragflow.git
|
||||||
|
cd ragflow/
|
||||||
|
pip3 install huggingface-hub
|
||||||
|
python3 download_deps.py # embedding models
|
||||||
|
docker build -f Dockerfile.slim -t infiniflow/ragflow:dev-slim .
|
||||||
|
```
|
||||||
|
|
||||||
|
## 🪚 Build the Docker image including embedding models
|
||||||
|
|
||||||
|
This image includes embedding models and is approximately 9 GB in size, and so relies on external LLM services only.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/infiniflow/ragflow.git
|
||||||
|
cd ragflow/
|
||||||
|
pip3 install huggingface-hub
|
||||||
|
python3 download_deps.py # embedding models
|
||||||
|
docker build -f Dockerfile -t infiniflow/ragflow:dev .
|
||||||
|
```
|
||||||
|
|
||||||
|
## 🔨 Launch service from source for development
|
||||||
|
|
||||||
|
1. Install Poetry, or skip this step if it is already installed:
|
||||||
|
```bash
|
||||||
|
curl -sSL https://install.python-poetry.org | python3 -
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Clone the source code and install Python dependencies:
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/infiniflow/ragflow.git
|
||||||
|
cd ragflow/
|
||||||
|
export POETRY_VIRTUALENVS_CREATE=true POETRY_VIRTUALENVS_IN_PROJECT=true
|
||||||
|
~/.local/bin/poetry install --sync --no-root # install RAGFlow dependent python modules
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Launch the dependent services (MinIO, Elasticsearch, Redis, and MySQL) using Docker Compose:
|
||||||
|
```bash
|
||||||
|
docker compose -f docker/docker-compose-base.yml up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
Add the following line to `/etc/hosts` to resolve all hosts specified in **docker/service_conf.yaml** to `127.0.0.1`:
|
||||||
|
```
|
||||||
|
127.0.0.1 es01 mysql minio redis
|
||||||
|
```
|
||||||
|
In **docker/service_conf.yaml**, update mysql port to `5455` and es port to `1200`, as specified in **docker/.env**.
|
||||||
|
|
||||||
|
4. If you cannot access HuggingFace, set the `HF_ENDPOINT` environment variable to use a mirror site:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
export HF_ENDPOINT=https://hf-mirror.com
|
||||||
|
```
|
||||||
|
|
||||||
|
5. Launch backend service:
|
||||||
|
```bash
|
||||||
|
source .venv/bin/activate
|
||||||
|
export PYTHONPATH=$(pwd)
|
||||||
|
bash docker/launch_backend_service.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
6. Install frontend dependencies:
|
||||||
|
```bash
|
||||||
|
cd web
|
||||||
|
npm install --force
|
||||||
|
```
|
||||||
|
7. Configure frontend to update `proxy.target` in **.umirc.ts** to `http://127.0.0.1:9380`:
|
||||||
|
8. Launch frontend service:
|
||||||
|
```bash
|
||||||
|
npm run dev
|
||||||
|
```
|
||||||
|
|
||||||
|
_The following output confirms a successful launch of the system:_
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
## 📚 Documentation
|
## 📚 Documentation
|
||||||
|
|
||||||
- [Quickstart](https://ragflow.io/docs/dev/)
|
- [Quickstart](https://ragflow.io/docs/dev/)
|
||||||
|
11
README_ja.md
11
README_ja.md
@ -152,12 +152,11 @@
|
|||||||
_以下の出力は、システムが正常に起動したことを確認するものです:_
|
_以下の出力は、システムが正常に起動したことを確認するものです:_
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
____ ______ __
|
____ ___ ______ ______ __
|
||||||
/ __ \ ____ _ ____ _ / ____// /____ _ __
|
/ __ \ / | / ____// ____// /____ _ __
|
||||||
/ /_/ // __ `// __ `// /_ / // __ \| | /| / /
|
/ /_/ // /| | / / __ / /_ / // __ \| | /| / /
|
||||||
/ _, _// /_/ // /_/ // __/ / // /_/ /| |/ |/ /
|
/ _, _// ___ |/ /_/ // __/ / // /_/ /| |/ |/ /
|
||||||
/_/ |_| \__,_/ \__, //_/ /_/ \____/ |__/|__/
|
/_/ |_|/_/ |_|\____//_/ /_/ \____/ |__/|__/
|
||||||
/____/
|
|
||||||
|
|
||||||
* Running on all addresses (0.0.0.0)
|
* Running on all addresses (0.0.0.0)
|
||||||
* Running on http://127.0.0.1:9380
|
* Running on http://127.0.0.1:9380
|
||||||
|
11
README_ko.md
11
README_ko.md
@ -157,12 +157,11 @@
|
|||||||
_다음 출력 결과로 시스템이 성공적으로 시작되었음을 확인합니다:_
|
_다음 출력 결과로 시스템이 성공적으로 시작되었음을 확인합니다:_
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
____ ______ __
|
____ ___ ______ ______ __
|
||||||
/ __ \ ____ _ ____ _ / ____// /____ _ __
|
/ __ \ / | / ____// ____// /____ _ __
|
||||||
/ /_/ // __ `// __ `// /_ / // __ \| | /| / /
|
/ /_/ // /| | / / __ / /_ / // __ \| | /| / /
|
||||||
/ _, _// /_/ // /_/ // __/ / // /_/ /| |/ |/ /
|
/ _, _// ___ |/ /_/ // __/ / // /_/ /| |/ |/ /
|
||||||
/_/ |_| \__,_/ \__, //_/ /_/ \____/ |__/|__/
|
/_/ |_|/_/ |_|\____//_/ /_/ \____/ |__/|__/
|
||||||
/____/
|
|
||||||
|
|
||||||
* Running on all addresses (0.0.0.0)
|
* Running on all addresses (0.0.0.0)
|
||||||
* Running on http://127.0.0.1:9380
|
* Running on http://127.0.0.1:9380
|
||||||
|
11
README_zh.md
11
README_zh.md
@ -150,12 +150,11 @@
|
|||||||
_出现以下界面提示说明服务器启动成功:_
|
_出现以下界面提示说明服务器启动成功:_
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
____ ______ __
|
____ ___ ______ ______ __
|
||||||
/ __ \ ____ _ ____ _ / ____// /____ _ __
|
/ __ \ / | / ____// ____// /____ _ __
|
||||||
/ /_/ // __ `// __ `// /_ / // __ \| | /| / /
|
/ /_/ // /| | / / __ / /_ / // __ \| | /| / /
|
||||||
/ _, _// /_/ // /_/ // __/ / // /_/ /| |/ |/ /
|
/ _, _// ___ |/ /_/ // __/ / // /_/ /| |/ |/ /
|
||||||
/_/ |_| \__,_/ \__, //_/ /_/ \____/ |__/|__/
|
/_/ |_|/_/ |_|\____//_/ /_/ \____/ |__/|__/
|
||||||
/____/
|
|
||||||
|
|
||||||
* Running on all addresses (0.0.0.0)
|
* Running on all addresses (0.0.0.0)
|
||||||
* Running on http://127.0.0.1:9380
|
* Running on http://127.0.0.1:9380
|
||||||
|
@ -47,12 +47,11 @@ def update_progress():
|
|||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
print(r"""
|
print(r"""
|
||||||
____ ______ __
|
____ ___ ______ ______ __
|
||||||
/ __ \ ____ _ ____ _ / ____// /____ _ __
|
/ __ \ / | / ____// ____// /____ _ __
|
||||||
/ /_/ // __ `// __ `// /_ / // __ \| | /| / /
|
/ /_/ // /| | / / __ / /_ / // __ \| | /| / /
|
||||||
/ _, _// /_/ // /_/ // __/ / // /_/ /| |/ |/ /
|
/ _, _// ___ |/ /_/ // __/ / // /_/ /| |/ |/ /
|
||||||
/_/ |_| \__,_/ \__, //_/ /_/ \____/ |__/|__/
|
/_/ |_|/_/ |_|\____//_/ /_/ \____/ |__/|__/
|
||||||
/____/
|
|
||||||
|
|
||||||
""", flush=True)
|
""", flush=True)
|
||||||
stat_logger.info(
|
stat_logger.info(
|
||||||
|
28
docker/launch_backend_service.sh
Normal file
28
docker/launch_backend_service.sh
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# unset http proxy which maybe set by docker daemon
|
||||||
|
export http_proxy=""; export https_proxy=""; export no_proxy=""; export HTTP_PROXY=""; export HTTPS_PROXY=""; export NO_PROXY=""
|
||||||
|
|
||||||
|
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/
|
||||||
|
|
||||||
|
PY=python3
|
||||||
|
if [[ -z "$WS" || $WS -lt 1 ]]; then
|
||||||
|
WS=1
|
||||||
|
fi
|
||||||
|
|
||||||
|
function task_exe(){
|
||||||
|
while [ 1 -eq 1 ];do
|
||||||
|
$PY rag/svr/task_executor.py $1;
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
for ((i=0;i<WS;i++))
|
||||||
|
do
|
||||||
|
task_exe $i &
|
||||||
|
done
|
||||||
|
|
||||||
|
while [ 1 -eq 1 ];do
|
||||||
|
$PY api/ragflow_server.py
|
||||||
|
done
|
||||||
|
|
||||||
|
wait;
|
@ -196,12 +196,11 @@ This section provides instructions on setting up the RAGFlow server on Linux. If
|
|||||||
_The following output confirms a successful launch of the system:_
|
_The following output confirms a successful launch of the system:_
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
____ ______ __
|
____ ___ ______ ______ __
|
||||||
/ __ \ ____ _ ____ _ / ____// /____ _ __
|
/ __ \ / | / ____// ____// /____ _ __
|
||||||
/ /_/ // __ `// __ `// /_ / // __ \| | /| / /
|
/ /_/ // /| | / / __ / /_ / // __ \| | /| / /
|
||||||
/ _, _// /_/ // /_/ // __/ / // /_/ /| |/ |/ /
|
/ _, _// ___ |/ /_/ // __/ / // /_/ /| |/ |/ /
|
||||||
/_/ |_| \__,_/ \__, //_/ /_/ \____/ |__/|__/
|
/_/ |_|/_/ |_|\____//_/ /_/ \____/ |__/|__/
|
||||||
/____/
|
|
||||||
|
|
||||||
* Running on all addresses (0.0.0.0)
|
* Running on all addresses (0.0.0.0)
|
||||||
* Running on http://127.0.0.1:9380
|
* Running on http://127.0.0.1:9380
|
||||||
|
@ -168,12 +168,11 @@ You will not log in to RAGFlow unless the server is fully initialized. Run `dock
|
|||||||
*The server is successfully initialized, if your system displays the following:*
|
*The server is successfully initialized, if your system displays the following:*
|
||||||
|
|
||||||
```
|
```
|
||||||
____ ______ __
|
____ ___ ______ ______ __
|
||||||
/ __ \ ____ _ ____ _ / ____// /____ _ __
|
/ __ \ / | / ____// ____// /____ _ __
|
||||||
/ /_/ // __ `// __ `// /_ / // __ \| | /| / /
|
/ /_/ // /| | / / __ / /_ / // __ \| | /| / /
|
||||||
/ _, _// /_/ // /_/ // __/ / // /_/ /| |/ |/ /
|
/ _, _// ___ |/ /_/ // __/ / // /_/ /| |/ |/ /
|
||||||
/_/ |_| \__,_/ \__, //_/ /_/ \____/ |__/|__/
|
/_/ |_|/_/ |_|\____//_/ /_/ \____/ |__/|__/
|
||||||
/____/
|
|
||||||
|
|
||||||
* Running on all addresses (0.0.0.0)
|
* Running on all addresses (0.0.0.0)
|
||||||
* Running on http://127.0.0.1:9380
|
* Running on http://127.0.0.1:9380
|
||||||
|
Loading…
x
Reference in New Issue
Block a user