From 4ddd51a9750fa0aa3119b0f492a2120cbafc1d8a Mon Sep 17 00:00:00 2001 From: mohammadian7 Date: Thu, 4 Jun 2026 14:12:26 +0000 Subject: [PATCH] Update Dockerfile --- Dockerfile | 42 +++++++++++++++++++++++++----------------- 1 file changed, 25 insertions(+), 17 deletions(-) diff --git a/Dockerfile b/Dockerfile index 8430db2..acf0a15 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,28 +1,36 @@ FROM python:3.12-slim-bookworm -ARG http_proxy -ARG https_proxy -ARG HTTP_PROXY -ARG HTTPS_PROXY -ARG no_proxy -ARG NO_PROXY +# ۱. تعریف آدرس پروکسی به صورت مستقیم (Hardcoded) برای اطمینان از صحت در مرحله Build +ENV http_proxy=http://172.17.0.1:1081 +ENV https_proxy=http://172.17.0.1:1081 +ENV HTTP_PROXY=http://172.17.0.1:1081 +ENV HTTPS_PROXY=http://172.17.0.1:1081 +ENV no_proxy=localhost,127.0.0.1,172.17.0.1 +ENV NO_PROXY=localhost,127.0.0.1,172.17.0.1 -ENV http_proxy=${http_proxy} -ENV https_proxy=${https_proxy} -ENV HTTP_PROXY=${HTTP_PROXY} -ENV HTTPS_PROXY=${HTTPS_PROXY} -ENV no_proxy=${no_proxy} -ENV NO_PROXY=${NO_PROXY} - -RUN echo "Acquire::http::Proxy \"${http_proxy}\";" > /etc/apt/apt.conf.d/99proxy && \ - echo "Acquire::https::Proxy \"${https_proxy}\";" >> /etc/apt/apt.conf.d/99proxy +# ۲. تنظیم پروکسی برای APT (استفاده از آدرس مستقیم به جای متغیر برای جلوگیری از خطای خالی بودن) +RUN echo 'Acquire::http::Proxy "http://172.17.0.1:1081";' > /etc/apt/apt.conf.d/99proxy && \ + echo 'Acquire::https::Proxy "http://172.17.0.1:1081";' >> /etc/apt/apt.conf.d/99proxy +# ۳. نصب پکیج‌های مورد نیاز (حالا بدون خطا اجرا می‌شود) RUN apt-get update && apt-get install -y --no-install-recommends \ git \ util-linux \ ca-certificates \ && rm -rf /var/lib/apt/lists/* -RUN rm -f /etc/apt/apt.conf.d/99proxy +# ۴. حذف تنظیمات پروکسی APT (اختیاری - اگر می‌خواهید در زمان اجرای برنامه پروکسی فعال نباشد) +# RUN rm -f /etc/apt/apt.conf.d/99proxy -# از اینجا به بعد دستورات اصلی پروژه‌ات +# ۵. تنظیمات محیط کاری +WORKDIR /app + +# ۶. نصب کتابخانه‌های پایتون (Pip هم از ENV بالا استفاده می‌کند) +COPY requirements.txt . +RUN pip install --no-cache-dir -r requirements.txt + +# ۷. کپی کردن بقیه کدها +COPY . . + +# ۸. دستور اجرای برنامه +CMD ["python", "main.py"]