feat: add multi-stages docker and support platform arm (#274)

* feat: add multi-stages docker and support platform arm

* refactor: pre-commit

* fix: raise ImportError (fastembed) instead of auto install

* feat: add dependencies for local llm

* feat: free disk

* feat: update README

* feat: update README

* chore: fix typo

---------

Co-authored-by: cin-niko <niko@cinnamon.is>
This commit is contained in:
kan_cin
2024-09-12 20:25:03 +07:00
committed by GitHub
parent 73a476979e
commit d3fd75297f
6 changed files with 141 additions and 31 deletions

View File

@@ -86,17 +86,44 @@ Use the most recent release .zip to include latest features and bug-fixes.
#### With Docker (recommended)
- Use this command to launch the server
We support `lite` & `full` version of Dockerfile. With `full`, the extra packages of `unstructured` will be installed as
well, it can support multiple file types (.doc, .docx, ...) but the cost is larger docker image size
- To use the `lite` version.
```
docker run \
-e GRADIO_SERVER_NAME=0.0.0.0 \
-e GRADIO_SERVER_PORT=7860 \
-p 7860:7860 -it --rm \
ghcr.io/cinnamon/kotaemon:latest
ghcr.io/cinnamon/kotaemon:latest-lite
```
Navigate to `http://localhost:7860/` to access the web UI.
- To use the `full` version.
```
docker run \
-e GRADIO_SERVER_NAME=0.0.0.0 \
-e GRADIO_SERVER_PORT=7860 \
-p 7860:7860 -it --rm \
ghcr.io/cinnamon/kotaemon:latest-full
```
Currently, two platforms: `linux/amd64` and `linux/arm64` (for newer Mac) are provided & tested. User can specify the platform by passing `--platform` in the docker run command. For example:
```
# To run docker with platform linux/arm64
docker run \
-e GRADIO_SERVER_NAME=0.0.0.0 \
-e GRADIO_SERVER_PORT=7860 \
-p 7860:7860 -it --rm \
--platform linux/arm64 \
ghcr.io/cinnamon/kotaemon:latest-lite
```
If everything is set up fine, navigate to `http://localhost:7860/` to access the web UI.
We use [GHCR](https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry) to store docker images, all images can be found [here.](https://github.com/Cinnamon/kotaemon/pkgs/container/kotaemon)
#### Without Docker