forked from Start9Labs/freegpt2-startos
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
39 lines (33 loc) · 2 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
FROM ghcr.io/open-webui/open-webui:0.3.10 AS gui
FROM ollama/ollama:0.2.8 AS ollama
COPY --from=gui /app /app
# COPY --from=gui /root/.cache/chroma/onnx_models/all-MiniLM-L6-v2/onnx /root/.cache/chroma/onnx_models/all-MiniLM-L6-v2/onnx
WORKDIR /app/backend
RUN apt-get update && \
apt-get install -y --no-install-recommends python3.11 python3-pip pandoc netcat-openbsd curl ffmpeg libsm6 libxext6 && \
rm -rf /var/lib/apt/lists/* && \
mkdir -p /root/.cache/chroma/onnx_models/all-MiniLM-L6-v2 && \
chown root:root -R /root/.cache/chroma && \
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu --no-cache-dir && \
pip3 install -r requirements.txt --no-cache-dir
# python -c "import os; from sentence_transformers import SentenceTransformer; SentenceTransformer(os.environ['RAG_EMBEDDING_MODEL'], device='cpu')" && \
# python -c "import os; from faster_whisper import WhisperModel; WhisperModel(os.environ['WHISPER_MODEL'], device='cpu', compute_type='int8', download_root=os.environ['WHISPER_MODEL_DIR'])"
ADD ./docker_entrypoint.sh /usr/local/bin/docker_entrypoint.sh
RUN chmod a+x /usr/local/bin/docker_entrypoint.sh
COPY icon.png /app/build/static/favicon.png
COPY icon.png /app/build/static/splash.png
COPY icon.png /app/build/static/splash-dark.png
RUN sed -i 's/WEBUI_NAME != "Open WebUI"/WEBUI_NAME != "FreeGPT-2"/g' /app/backend/config.py
RUN sed -i 's#WEBUI_FAVICON_URL = "https://openwebui.com/favicon.png"#WEBUI_FAVICON_URL = "/static/favicon.png"#g' /app/backend/config.py
RUN sed -i 's/flex w-full justify-between items-center/flex w-full justify-between items-center hidden/g' /app/build/_app/immutable/nodes/2.*.js
ADD ./scripts/check-ui.sh /usr/local/bin/check-ui.sh
RUN chmod a+x /usr/local/bin/check-ui.sh
ENV ENV=prod
ENV OPENAI_API_BASE_URL=""
ENV OPENAI_API_KEY=""
ENV WEBUI_NAME="FreeGPT-2"
ENV WEBUI_SECRET_KEY=""
ENV SCARF_NO_ANALYTICS=true
ENV DO_NOT_TRACK=true
ENV RAG_EMBEDDING_MODEL="all-MiniLM-L6-v2"
ENV RAG_EMBEDDING_MODEL_DEVICE_TYPE="cpu"