File size: 1,164 Bytes
cc9f92c
ef31b6d
6278677
 
cc9f92c
6278677
 
feaa33a
 
 
 
6278677
 
f11bcc1
4461325
feaa33a
10e3225
6278677
7e7a852
 
6278677
7e7a852
6278677
ef31b6d
cc9f92c
6278677
7e7a852
cc9f92c
6278677
 
 
2df7bb1
ef31b6d
efa2743
6278677
 
cc9f92c
 
 
889c14c
6278677
 
cc9f92c
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
40
41
42
43
44

FROM nvidia/cuda:12.4.1-devel-ubuntu22.04

# Set the working directory in the container
WORKDIR /DocQA

# Install system dependencies, including Python and utilities
RUN apt-get update && apt-get install -y \
    git \
    python3.10 \
    python3-pip \
    poppler-utils \
    && apt-get clean && rm -rf /var/lib/apt/lists/*




# Add a new user to avoid running as root
RUN useradd -m -u 1000 user

# Switch to the new user
USER user
ENV HOME=/home/user
ENV PATH=/home/user/.local/bin:/usr/local/cuda/bin:$PATH

# Set the working directory for the application
WORKDIR $HOME/app

# Copy the requirements.txt first to leverage Docker cache
COPY --chown=user requirements.txt $HOME/app/
RUN pip install --no-cache-dir -r requirements.txt
RUN pip uninstall --y faiss-cpu & pip install faiss-gpu
RUN pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu124

# Copy the rest of the application's code to the container
COPY --chown=user . $HOME/app

# Expose the port the app runs on
EXPOSE 8501

# Set the entry point to run the application
ENTRYPOINT ["streamlit", "run", "app.py", "--server.enableXsrfProtection", "false"]