# Base image FROM python:3.10-slim # نصب وابستگی‌های ضروری RUN apt-get update && apt-get install -y git libgl1-mesa-glx libglib2.0-0 && rm -rf /var/lib/apt/lists/* # ایجاد کاربر غیر روت برای امنیت RUN useradd -m -u 1000 user USER user # ایجاد دایرکتوری‌های لازم RUN mkdir -p /home/user/app/hf_cache # تنظیم مسیر کاری WORKDIR /home/user/app # کلون کردن ریپو CelebAMask-HQ RUN git clone https://github.com/switchablenorms/CelebAMask-HQ.git # تنظیم متغیرهای محیطی ENV PYTHONPATH="/home/user/app/CelebAMask-HQ:/home/user/app/CelebAMask-HQ/face_parsing:${PYTHONPATH}" ENV HF_HOME="/home/user/app/hf_cache" ENV TRANSFORMERS_CACHE="/home/user/app/hf_cache" ENV HUGGINGFACE_HUB_CACHE="/home/user/app/hf_cache" # کپی فایل‌های مورد نیاز COPY --chown=user:user requirements.txt . COPY --chown=user:user unet.py /home/user/app/CelebAMask-HQ/face_parsing/ COPY --chown=user:user model_utils.py /home/user/app/CelebAMask-HQ/face_parsing/ COPY --chown=user:user utils.py /home/user/app/CelebAMask-HQ/face_parsing/ COPY --chown=user:user app.py . # نصب پکیج‌ها RUN pip install --no-cache-dir -r requirements.txt # دستور پیش‌فرض اجرای اپ CMD ["python", "app.py"]