udbhav commited on
Commit
c78f34e
·
1 Parent(s): f3da1e0

changed the docker

Browse files
Files changed (2) hide show
  1. Dockerfile +17 -49
  2. requirements.txt +1 -1
Dockerfile CHANGED
@@ -1,73 +1,41 @@
1
- # Use NVIDIA CUDA base image (Ubuntu 22.04 jammy)
2
  FROM nvidia/cuda:12.3.2-devel-ubuntu22.04
3
 
4
- # ---------------- Base env ----------------
5
  ENV DEBIAN_FRONTEND=noninteractive
6
  ENV PYTHONUNBUFFERED=1
7
  ENV CUDA_HOME=/usr/local/cuda
8
  ENV PATH=${CUDA_HOME}/bin:/usr/local/bin:${PATH}
9
  ENV LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}
10
 
11
- # Fix OpenMP threads to a valid integer (libgomp warning)
12
- ENV OMP_NUM_THREADS=4
13
-
14
- # ---------------- System deps + Python 3.12 + headless GL ----------------
15
  RUN apt-get update && apt-get install -y --no-install-recommends \
16
- software-properties-common \
17
- ca-certificates \
18
- curl wget git build-essential \
19
  libgl1-mesa-glx libglib2.0-0 libsm6 libxext6 libxrender1 \
20
- libgomp1 libgcc-s1 \
21
  libosmesa6 libosmesa6-dev \
22
  libegl1-mesa libegl1-mesa-dev \
23
- && add-apt-repository ppa:deadsnakes/ppa -y \
24
- && apt-get update && apt-get install -y --no-install-recommends \
25
- python3.12 python3.12-dev python3.12-venv \
26
  && rm -rf /var/lib/apt/lists/*
27
 
28
- # Install pip for Python 3.12
29
- RUN curl -sS https://bootstrap.pypa.io/get-pip.py -o /tmp/get-pip.py \
30
- && python3.12 /tmp/get-pip.py \
31
- && rm /tmp/get-pip.py
32
-
33
- # Make 'python' and 'pip' point to Python 3.12
34
- RUN ln -sf /usr/bin/python3.12 /usr/bin/python && \
35
- ln -sf /usr/local/bin/pip3.12 /usr/local/bin/pip
36
-
37
- # ---------------- Writable app data & HF cache ----------------
38
- ENV APP_DATA_DIR=/data
39
- ENV HF_HOME=/data/hf_home
40
- ENV HUGGINGFACE_HUB_CACHE=/data/hf_home
41
- ENV TRANSFORMERS_CACHE=/data/hf_home
42
- ENV MPLCONFIGDIR=/data/matplotlib
43
 
44
- RUN mkdir -p /data/geometry /data/solution /data/weights /data/hf_home /data/matplotlib \
45
- && chmod -R 777 /data
46
-
47
- # ---------------- Install frpc for Gradio share=True ----------------
48
- RUN mkdir -p /data/hf_home/gradio/frpc && \
49
- wget https://cdn-media.huggingface.co/frpc-gradio-0.3/frpc_linux_amd64 -O /data/hf_home/gradio/frpc/frpc_linux_amd64_v0.3 && \
50
- chmod +x /data/hf_home/gradio/frpc/frpc_linux_amd64_v0.3
51
-
52
- # ---------------- Application setup ----------------
53
  WORKDIR /app
54
 
55
- # Copy requirements first (better caching)
56
  COPY requirements.txt .
57
 
58
- # Install Python deps
59
- RUN pip install --no-cache-dir --upgrade pip setuptools wheel \
60
- && pip install --no-cache-dir -r requirements.txt
61
 
62
- # Copy the rest of the source code
63
  COPY . .
64
 
65
- # Permissions
66
- RUN chmod +x app.py
67
- RUN chown -R 1000:1000 /app
68
-
69
- # Expose Trame/Gradio port
70
  EXPOSE 7860
71
 
72
- # Run app (Trame or Gradio, same entrypoint)
73
- CMD ["python", "app.py"]
 
1
+ # Use NVIDIA CUDA base image (Ubuntu 22.04)
2
  FROM nvidia/cuda:12.3.2-devel-ubuntu22.04
3
 
4
+ # Non-interactive apt
5
  ENV DEBIAN_FRONTEND=noninteractive
6
  ENV PYTHONUNBUFFERED=1
7
  ENV CUDA_HOME=/usr/local/cuda
8
  ENV PATH=${CUDA_HOME}/bin:/usr/local/bin:${PATH}
9
  ENV LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}
10
 
11
+ # System deps (Python 3.12 + basics)
 
 
 
12
  RUN apt-get update && apt-get install -y --no-install-recommends \
13
+ python3.12 python3.12-venv python3-pip python3.12-distutils \
14
+ git curl ca-certificates build-essential \
 
15
  libgl1-mesa-glx libglib2.0-0 libsm6 libxext6 libxrender1 \
 
16
  libosmesa6 libosmesa6-dev \
17
  libegl1-mesa libegl1-mesa-dev \
 
 
 
18
  && rm -rf /var/lib/apt/lists/*
19
 
20
+ # Optional: make `python` and `pip` point to 3.12
21
+ RUN update-alternatives --install /usr/bin/python python /usr/bin/python3.12 1 && \
22
+ update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1
 
 
 
 
 
 
 
 
 
 
 
 
23
 
24
+ # Workdir
 
 
 
 
 
 
 
 
25
  WORKDIR /app
26
 
27
+ # Copy requirements first (good for build caching)
28
  COPY requirements.txt .
29
 
30
+ # Install Python packages
31
+ RUN pip install --upgrade pip && \
32
+ pip install --no-cache-dir -r requirements.txt
33
 
34
+ # Copy the rest of your app
35
  COPY . .
36
 
37
+ # HF Spaces default port
 
 
 
 
38
  EXPOSE 7860
39
 
40
+ # Start your Trame app (change app_trame.py to your actual file)
41
+ CMD ["python", "app_trame.py"]
requirements.txt CHANGED
@@ -8,9 +8,9 @@
8
  torch==2.5.0
9
  torchvision==0.20.0
10
  torchaudio==2.5.0
11
- torch_geometric
12
 
13
  -f https://data.pyg.org/whl/torch-2.5.0+cu121.html
 
14
  pyg_lib
15
  torch_scatter
16
  torch_sparse
 
8
  torch==2.5.0
9
  torchvision==0.20.0
10
  torchaudio==2.5.0
 
11
 
12
  -f https://data.pyg.org/whl/torch-2.5.0+cu121.html
13
+ torch_geometric
14
  pyg_lib
15
  torch_scatter
16
  torch_sparse