deddoggo commited on
Commit
4b0b556
·
1 Parent(s): 49b8268
Files changed (2) hide show
  1. Dockerfile +14 -5
  2. environment.yml +16 -23
Dockerfile CHANGED
@@ -3,17 +3,26 @@
3
  # Bước 1: Chọn base image
4
  FROM continuumio/miniconda3:latest
5
  ENV DEBIAN_FRONTEND=noninteractive
 
 
6
  WORKDIR /app
 
 
7
  COPY environment.yml .
8
 
9
- # Bước 4: Tạo môi trường Conda từ file environment.yml
10
- # Thay "myapp-env" bằng tên môi trường bạn đã đặt trong environment.yml nếu khác.
11
- # Thêm --force để đảm bảo ghi đè môi trường cũ nếu có (hữu ích khi build lại).
12
- RUN conda env create -f environment.yml && \
 
13
  conda clean -afy
14
 
15
  # Bước 5: Kích hoạt môi trường Conda
16
- SHELL ["conda", "run", "-n", "myapp-env", "/bin/bash", "-c"]
 
 
 
 
17
 
18
 
19
  # Bước 7: Xác thực cài đặt (RẤT QUAN TRỌNG)
 
3
  # Bước 1: Chọn base image
4
  FROM continuumio/miniconda3:latest
5
  ENV DEBIAN_FRONTEND=noninteractive
6
+
7
+ # Bước 2: Thiết lập thư mục làm việc
8
  WORKDIR /app
9
+
10
+ # Bước 3: Sao chép file định nghĩa môi trường Conda
11
  COPY environment.yml .
12
 
13
+ # Cài đặt mamba vào môi trường base của Conda từ conda-forge
14
+ RUN conda install -n base -c conda-forge mamba -y
15
+
16
+ # Bước 4: Tạo môi trường Conda bằng mamba
17
+ RUN mamba env create -f environment.yml && \
18
  conda clean -afy
19
 
20
  # Bước 5: Kích hoạt môi trường Conda
21
+ SHELL ["conda", "run", "-n", "myapp-env", "/bin/bash", "-c"] # Replace myapp-env if your env name is different
22
+
23
+ # ... (Rest of your Dockerfile: pip install torch, verification steps, etc.) ...
24
+ # Ensure your PyTorch pip install (Step 6) still targets the same CUDA version
25
+ # (e.g., cu118 if your environment.yml has cudatoolkit=11.8.0)
26
 
27
 
28
  # Bước 7: Xác thực cài đặt (RẤT QUAN TRỌNG)
environment.yml CHANGED
@@ -1,33 +1,26 @@
1
  # environment.yml
2
  name: myapp-env
3
  channels:
4
- - nvidia # Channel chính cho cudatoolkit
5
- - pytorch # Kênh chính cho faiss-gpu và pytorch (nếu cài qua conda)
6
- - conda-forge # Cho các gói khác và có thể là fallback
7
  - defaults
8
  dependencies:
9
  - python=3.11.12
10
- # --- CUDA Toolkit và các gói Conda chính ---
11
- # Yêu cầu cudatoolkit 12.1 từ channel nvidia
12
- - nvidia::cudatoolkit==11.8.0
13
- # Cài faiss-gpu từ channel pytorch, nên tương thích với CUDA 12.1
14
- # Bỏ phiên bản cụ thể để lấy bản stable mới nhất tương thích
15
- - faiss
16
- - numpy=1.26.4 # Hoặc numpy=1.26.4 (để tương thích với faiss cũ hơn nếu cần)
17
- # Với Faiss mới hơn, có thể không cần ghim chặt numpy<2.0 nữa,
18
- # nhưng để an toàn, bạn có thể giữ lại hoặc thử bỏ đi nếu faiss mới hỗ trợ numpy 2.x
19
- # Các gói PyTorch CPU làm nền (vẫn giữ để Conda biết về sự tồn tại của PyTorch)
20
- - pytorch::pytorch-cpu
21
  - pytorch::torchvision-cpu
22
  - pytorch::torchaudio-cpu
23
- # --- Các gói Pip ---
24
  - pip
25
  - pip:
26
- - gradio
27
- - sentence-transformers
28
- - unsloth
29
- - transformers
30
- - rank_bm25
31
- - huggingface_hub
32
- # KHÔNG có torch, torchvision, torchaudio, numpy ở đây
33
- # ... các gói pip khác nếu cần
 
1
  # environment.yml
2
  name: myapp-env
3
  channels:
4
+ - nvidia
5
+ - pytorch
6
+ - conda-forge
7
  - defaults
8
  dependencies:
9
  - python=3.11.12
10
+ - nvidia::cudatoolkit=11.8.0 # Pin specific cudatoolkit
11
+ # Find a specific faiss-gpu version for py311 & cuda11.8
12
+ # e.g., pytorch::faiss-gpu=1.8.0 (verify availability)
13
+ - pytorch::faiss-gpu # Or a more specific version like =1.8.0
14
+ - numpy=1.26.4 # Pin NumPy for faiss compatibility
15
+ # Pin CPU PyTorch versions if known
16
+ - pytorch::pytorch-cpu # >=2.0.0,<2.4.0 or specific version
 
 
 
 
17
  - pytorch::torchvision-cpu
18
  - pytorch::torchaudio-cpu
 
19
  - pip
20
  - pip:
21
+ - gradio # Pin: gradio==X.Y.Z
22
+ - sentence-transformers # Pin
23
+ - unsloth # Pin
24
+ - transformers # Pin
25
+ - rank_bm25 # Pin
26
+ - huggingface_hub # Pin