chroma

Форк
0
/
Dockerfile 
41 строка · 1.2 Кб
1
FROM python:3.11-slim-bookworm AS builder
2
ARG REBUILD_HNSWLIB
3
RUN apt-get update --fix-missing && apt-get install -y --fix-missing \
4
    build-essential \
5
    gcc \
6
    g++ \
7
    cmake \
8
    autoconf && \
9
    rm -rf /var/lib/apt/lists/* && \
10
    mkdir /install
11

12
WORKDIR /install
13

14
COPY ./requirements.txt requirements.txt
15

16
RUN pip install --no-cache-dir --upgrade --prefix="/install" -r requirements.txt
17
RUN if [ "$REBUILD_HNSWLIB" = "true" ]; then pip install --no-binary :all: --force-reinstall --no-cache-dir --prefix="/install" chroma-hnswlib; fi
18

19
FROM python:3.11-slim-bookworm AS final
20

21
RUN mkdir /chroma
22
WORKDIR /chroma
23

24
COPY --from=builder /install /usr/local
25
COPY ./bin/docker_entrypoint.sh /docker_entrypoint.sh
26
COPY ./ /chroma
27

28
RUN apt-get update --fix-missing && apt-get install -y curl && \
29
    chmod +x /docker_entrypoint.sh && \
30
    rm -rf /var/lib/apt/lists/*
31

32
ENV CHROMA_HOST_ADDR "0.0.0.0"
33
ENV CHROMA_HOST_PORT 8000
34
ENV CHROMA_WORKERS 1
35
ENV CHROMA_LOG_CONFIG "chromadb/log_config.yml"
36
ENV CHROMA_TIMEOUT_KEEP_ALIVE 30
37

38
EXPOSE 8000
39

40
ENTRYPOINT ["/docker_entrypoint.sh"]
41
CMD [ "--workers ${CHROMA_WORKERS} --host ${CHROMA_HOST_ADDR} --port ${CHROMA_HOST_PORT} --proxy-headers --log-config ${CHROMA_LOG_CONFIG} --timeout-keep-alive ${CHROMA_TIMEOUT_KEEP_ALIVE}"]
42

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.