# Temel CUDA ve Ubuntu imajımız (Güçlü GPU desteği için) FROM nvidia/cuda:12.1.1-devel-ubuntu22.04 # Sistem ortam değişkenleri ENV DEBIAN_FRONTEND=noninteractive ENV PYTHONUNBUFFERED=1 # Gerekli sistem paketleri, Python ve arayüz için Node.js 20.x kurulumu RUN apt-get update && apt-get install -y \ curl \ python3.10 \ python3-pip \ python3.10-venv \ git \ wget \ libgl1 \ libglib2.0-0 \ libsm6 \ libxext6 \ libxrender-dev \ && curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \ && apt-get install -y nodejs \ && rm -rf /var/lib/apt/lists/* # Python komutunu varsayılan olarak python3.10'a bağla RUN ln -s /usr/bin/python3.10 /usr/bin/python # Space standartları için non-root (UID 1000) kullanıcı oluştur RUN useradd -m -u 1000 user USER user ENV HOME=/home/user \ PATH=/home/user/.local/bin:$PATH # Çalışma dizinini ayarla WORKDIR $HOME/app # ai-toolkit reposunu klonla RUN git clone https://github.com/ostris/ai-toolkit.git . # Python bağımlılıklarını kur (PyTorch ve reponun diğer kütüphaneleri) RUN pip install --no-cache-dir --upgrade pip && \ pip install --no-cache-dir torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121 && \ pip install --no-cache-dir -r requirements.txt # --- ARAYÜZ (UI) KURULUMU --- # ai-toolkit'in /ui klasörüne girip NPM paketlerini kuruyoruz ve önyüzü derliyoruz WORKDIR $HOME/app/ui RUN npm install && npm run build # Tekrar ana dizine dön WORKDIR $HOME/app # AI-Toolkit UI varsayılan olarak 8675 portundan yayın yapar EXPOSE 8675 # YAML yerine direkt UI arayüzünü başlatan komut CMD ["bash", "-c", "huggingface-cli login --token $HF_TOKEN --add-to-git-credential && cd ui && npm run build_and_start"]