Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

exec /docker_entrypoint.sh: no such file or directory[Install issue]: #1796

Open
crystal-yxj opened this issue Mar 1, 2024 · 8 comments
Open
Labels
installation trouble trouble building or installing chroma

Comments

@crystal-yxj
Copy link

What happened?

exec /docker_entrypoint.sh: no such file or directory
image

Versions

windows10

Relevant log output

No response

@crystal-yxj crystal-yxj added the installation trouble trouble building or installing chroma label Mar 1, 2024
@tazarov
Copy link
Contributor

tazarov commented Mar 2, 2024

@crystal-yxj, do you mind sharing the command you use to create the container? Also which version of Chroma are you usign?

@a868111817
Copy link

a868111817 commented Mar 19, 2024

I have same problem...
Does anyone solve this problem?

git clone https://github.com/chroma-core/chroma
cd chroma
docker compose up --build

Versions
windows10

@jaycooley
Copy link

Yes, same issue here

@a868111817
Copy link

Yes, same issue here

Yes, I encountered the same issue as well. It took me about two days to find the solution... HaHa

The reason for the issue varies between Windows and UNIX systems.

Therefore, you will need to modify the Dockerfile from the original repository

FROM python:3.11-slim-bookworm AS builder
ARG REBUILD_HNSWLIB
RUN apt-get update --fix-missing && apt-get install -y --fix-missing \
    build-essential \
    gcc \
    g++ \
    cmake \
    autoconf && \
    rm -rf /var/lib/apt/lists/* && \
    mkdir /install

WORKDIR /install

COPY ./requirements.txt requirements.txt

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

FROM python:3.11-slim-bookworm AS final

RUN mkdir /chroma
WORKDIR /chroma

COPY --from=builder /install /usr/local
COPY ./bin/docker_entrypoint.sh /docker_entrypoint.sh
COPY ./ /chroma

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

ENV CHROMA_HOST_ADDR "0.0.0.0"
ENV CHROMA_HOST_PORT 8000
ENV CHROMA_WORKERS 1
ENV CHROMA_LOG_CONFIG "chromadb/log_config.yml"
ENV CHROMA_TIMEOUT_KEEP_ALIVE 30

EXPOSE 8000

ENTRYPOINT ["/bin/bash", "-c", "uvicorn chromadb.app:app --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}"]

Reference:https://stackoverflow.com/questions/76291703/how-can-i-troubleshoot-required-file-not-found-error-when-running-postgres-doc"

@tazarov
Copy link
Contributor

tazarov commented Mar 20, 2024

This is interesting, as all Chroma tests also run on Windows GH runner in docker, and we have not observed this particular problem. Reading the SO issue that @a868111817 shared, I get the feeling that the issue might be related to how the bash script is formatted.

@a868111817, does this work for you as well:

ENTRYPOINT ["/bin/bash", "-c","/docker_entrypoint.sh"]
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}"]

@a868111817
Copy link

This is interesting, as all Chroma tests also run on Windows GH runner in docker, and we have not observed this particular problem. Reading the SO issue that @a868111817 shared, I get the feeling that the issue might be related to how the bash script is formatted.

@a868111817, does this work for you as well:

ENTRYPOINT ["/bin/bash", "-c","/docker_entrypoint.sh"]
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}"]

Thank you for your response. I've tried your command, but I still believe the issue persists.

image

@dmytrostruk
Copy link

Same issue here.

Therefore, you will need to modify the Dockerfile from the original repository

@a868111817 Thanks for your fix.

@tazarov
Copy link
Contributor

tazarov commented May 18, 2024

@a868111817, I noticed you are running the server:v1.0 image. How do you build the image?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
installation trouble trouble building or installing chroma
Projects
None yet
Development

No branches or pull requests

5 participants