| 
                        123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 | 
                        - FROM ubuntu:22.04
 - USER root
 - 
 - WORKDIR /ragflow
 - 
 - RUN apt-get update && apt-get install -y wget curl build-essential libopenmpi-dev
 - 
 - RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda.sh && \
 -     bash ~/miniconda.sh -b -p /root/miniconda3 && \
 -     rm ~/miniconda.sh && ln -s /root/miniconda3/etc/profile.d/conda.sh /etc/profile.d/conda.sh && \
 -     echo ". /root/miniconda3/etc/profile.d/conda.sh" >> ~/.bashrc && \
 -     echo "conda activate base" >> ~/.bashrc
 - 
 - ENV PATH /root/miniconda3/bin:$PATH
 - 
 - RUN conda create -y --name py11 python=3.11
 - 
 - ENV CONDA_DEFAULT_ENV py11
 - ENV CONDA_PREFIX /root/miniconda3/envs/py11
 - ENV PATH $CONDA_PREFIX/bin:$PATH
 - 
 - RUN curl -sL https://deb.nodesource.com/setup_14.x | bash -
 - RUN apt-get install -y nodejs
 - 
 - RUN apt-get install -y nginx
 - 
 - ADD ./web ./web
 - ADD ./api ./api
 - ADD ./conf ./conf
 - ADD ./deepdoc ./deepdoc
 - ADD ./rag ./rag
 - ADD ./requirements.txt ./requirements.txt
 - 
 - RUN apt install openmpi-bin openmpi-common libopenmpi-dev
 - ENV LD_LIBRARY_PATH /usr/lib/x86_64-linux-gnu/openmpi/lib:$LD_LIBRARY_PATH
 - RUN rm /root/miniconda3/envs/py11/compiler_compat/ld
 - RUN cd ./web && npm i --force && npm run build
 - RUN conda run -n py11 pip install -i https://mirrors.aliyun.com/pypi/simple/ -r ./requirements.txt
 - 
 - RUN apt-get update && \
 -     apt-get install -y libglib2.0-0 libgl1-mesa-glx && \
 -     rm -rf /var/lib/apt/lists/*
 - 
 - RUN conda run -n py11 pip install -i https://mirrors.aliyun.com/pypi/simple/ ollama
 - RUN conda run -n py11 python -m nltk.downloader punkt
 - RUN conda run -n py11 python -m nltk.downloader wordnet
 - 
 - ENV PYTHONPATH=/ragflow/
 - ENV HF_ENDPOINT=https://hf-mirror.com
 - 
 - ADD docker/entrypoint.sh ./entrypoint.sh
 - RUN chmod +x ./entrypoint.sh
 - 
 - ENTRYPOINT ["./entrypoint.sh"]
 
 
  |