Dockerfile
Browse files- Dockerfile +4 -14
Dockerfile
CHANGED
|
@@ -1,32 +1,22 @@
|
|
| 1 |
# Dockerfile
|
| 2 |
|
| 3 |
# Bước 1: Chọn base image
|
| 4 |
-
# Sử dụng Miniconda làm base. Image này đã bao gồm Conda.
|
| 5 |
FROM continuumio/miniconda3:latest
|
| 6 |
-
|
| 7 |
-
# Thiết lập biến môi trường để tránh các prompt tương tác không cần thiết
|
| 8 |
-
# trong quá trình cài đặt các package (thường dùng cho các lệnh apt-get, nhưng để đây cũng không sao)
|
| 9 |
ENV DEBIAN_FRONTEND=noninteractive
|
| 10 |
-
|
| 11 |
-
# Bước 2: Thiết lập thư mục làm việc bên trong container
|
| 12 |
WORKDIR /app
|
| 13 |
-
|
| 14 |
-
# Bước 3: Sao chép file định nghĩa môi trường Conda
|
| 15 |
-
# File environment.yml này nên được đặt cùng cấp với Dockerfile trong repo của bạn.
|
| 16 |
COPY environment.yml .
|
| 17 |
|
| 18 |
# Bước 4: Tạo môi trường Conda từ file environment.yml
|
| 19 |
# Thay "myapp-env" bằng tên môi trường bạn đã đặt trong environment.yml nếu khác.
|
| 20 |
# Thêm --force để đảm bảo ghi đè môi trường cũ nếu có (hữu ích khi build lại).
|
| 21 |
RUN conda env create -f environment.yml && \
|
| 22 |
-
# Dọn dẹp cache của Conda để giảm kích thước image cuối cùng
|
| 23 |
conda clean -afy
|
| 24 |
|
| 25 |
-
# Bước 5: Kích hoạt môi trường Conda
|
| 26 |
-
# Tên môi trường "myapp-env" phải khớp với tên trong environment.yml
|
| 27 |
SHELL ["conda", "run", "-n", "myapp-env", "/bin/bash", "-c"]
|
| 28 |
|
| 29 |
-
# Bước 6: Cài đặt/nâng cấp PyTorch, torchvision, torchaudio với GPU (CUDA
|
|
|
|
| 30 |
RUN echo "Bắt đầu cài đặt/nâng cấp PyTorch, torchvision, torchaudio với GPU (CUDA 11.8)..." && \
|
| 31 |
pip install --no-cache-dir --upgrade \
|
| 32 |
torch==2.3.1 torchvision==0.18.1 torchaudio==2.3.1 \
|
|
@@ -62,4 +52,4 @@ COPY . .
|
|
| 62 |
|
| 63 |
# Bước 10: Thiết lập lệnh mặc định để chạy ứng dụng của bạn
|
| 64 |
# Điều này giả định rằng app.py của bạn khởi chạy server Gradio.
|
| 65 |
-
CMD ["python", "app.py"]
|
|
|
|
| 1 |
# Dockerfile
|
| 2 |
|
| 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 |
+
# Bước 6: Cài đặt/nâng cấp PyTorch, torchvision, torchaudio với GPU (CUDA 11.8)
|
| 19 |
+
# PHIÊN BẢN PYTORCH CẦN ĐƯỢC XÁC MINH TẠI https://download.pytorch.org/whl/cu118
|
| 20 |
RUN echo "Bắt đầu cài đặt/nâng cấp PyTorch, torchvision, torchaudio với GPU (CUDA 11.8)..." && \
|
| 21 |
pip install --no-cache-dir --upgrade \
|
| 22 |
torch==2.3.1 torchvision==0.18.1 torchaudio==2.3.1 \
|
|
|
|
| 52 |
|
| 53 |
# Bước 10: Thiết lập lệnh mặc định để chạy ứng dụng của bạn
|
| 54 |
# Điều này giả định rằng app.py của bạn khởi chạy server Gradio.
|
| 55 |
+
CMD ["conda", "run", "-n", "myapp-env", "python", "app.py"]
|