abdullahmubeen10 commited on
Commit
58ca653
·
verified ·
1 Parent(s): 92e9520

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +15 -64
Dockerfile CHANGED
@@ -1,72 +1,23 @@
1
- # Download base image ubuntu 18.04
2
- FROM ubuntu:18.04
3
 
4
- # Set environment variables
5
- ENV NB_USER jovyan
6
- ENV NB_UID 1000
7
- ENV HOME /home/${NB_USER}
8
- ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64/
9
 
10
- # Install required packages
11
- RUN apt-get update && apt-get install -y \
12
- tar \
13
- wget \
14
- bash \
15
- rsync \
16
- gcc \
17
- libfreetype6-dev \
18
- libhdf5-serial-dev \
19
- libpng-dev \
20
- libzmq3-dev \
21
- python3 \
22
- python3-dev \
23
- python3-pip \
24
- unzip \
25
- pkg-config \
26
- software-properties-common \
27
- graphviz \
28
- openjdk-8-jdk \
29
- ant \
30
- ca-certificates-java \
31
- && apt-get clean \
32
- && update-ca-certificates -f
33
 
34
- # Install Python 3.8 and pip
35
- RUN add-apt-repository ppa:deadsnakes/ppa \
36
- && apt-get update \
37
- && apt-get install -y python3.8 python3-pip \
38
- && apt-get clean
39
 
40
- # Set up JAVA_HOME
41
- RUN echo "export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/" >> /etc/profile \
42
- && echo "export PATH=\$JAVA_HOME/bin:\$PATH" >> /etc/profile
43
- # Create a new user named "jovyan" with user ID 1000
44
- RUN useradd -m -u ${NB_UID} ${NB_USER}
45
-
46
- # Switch to the "jovyan" user
47
- USER ${NB_USER}
48
-
49
- # Set home and path variables for the user
50
- ENV HOME=/home/${NB_USER} \
51
- PATH=/home/${NB_USER}/.local/bin:$PATH
52
-
53
- # Set up PySpark to use Python 3.8 for both driver and workers
54
- ENV PYSPARK_PYTHON=/usr/bin/python3.8
55
- ENV PYSPARK_DRIVER_PYTHON=/usr/bin/python3.8
56
-
57
- # Set the working directory to the user's home directory
58
- WORKDIR ${HOME}
59
-
60
- # Upgrade pip and install Python dependencies
61
- RUN python3.8 -m pip install --upgrade pip
62
- COPY requirements.txt /tmp/requirements.txt
63
- RUN python3.8 -m pip install -r /tmp/requirements.txt
64
-
65
- # Copy the application code into the container at /home/jovyan
66
- COPY --chown=${NB_USER}:${NB_USER} . ${HOME}
67
 
68
  # Expose port for Streamlit
69
  EXPOSE 7860
70
 
71
- # Define the entry point for the container
72
- ENTRYPOINT ["streamlit", "run", "app.py", "--server.port=7860", "--server.address=0.0.0.0"]
 
1
+ # Use the official Python image as a base
2
+ FROM python:3.8-slim
3
 
4
+ # Install Java for Spark NLP
5
+ RUN apt-get update && apt-get install -y openjdk-8-jdk && apt-get clean
 
 
 
6
 
7
+ # Set Java environment variables
8
+ ENV JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64"
9
+ ENV PATH="$JAVA_HOME/bin:$PATH"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
 
11
+ # Install Python dependencies
12
+ COPY requirements.txt /app/requirements.txt
13
+ RUN pip install --upgrade pip && pip install -r /app/requirements.txt
 
 
14
 
15
+ # Copy application code
16
+ COPY . /app
17
+ WORKDIR /app
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
 
19
  # Expose port for Streamlit
20
  EXPOSE 7860
21
 
22
+ # Run Streamlit app
23
+ CMD ["streamlit", "run", "app.py", "--server.port=7860", "--server.address=0.0.0.0"]