Spaces:
Sleeping
Sleeping
| # Gunakan Node.js versi 22 berbasis Debian Bullseye | |
| FROM node:22-bullseye | |
| # Update dan install Git | |
| RUN apt-get update && apt-get install -y --no-install-recommends \ | |
| git \ | |
| && rm -rf /var/lib/apt/lists/* \ | |
| && apt-get clean | |
| # Set workdir ke /app | |
| WORKDIR /app | |
| # Tambahkan ARG untuk GitHub Repository | |
| RUN --mount=type=secret,id=GITHUB_REPO,required=true \ | |
| git clone $(cat /run/secrets/GITHUB_REPO) myrepo | |
| # Masuk ke dalam folder repo | |
| WORKDIR /app/myrepo | |
| # Copy package.json dan package-lock.json untuk install dependensi lebih efisien | |
| COPY package*.json ./ | |
| # Install dependensi | |
| RUN npm install | |
| # Copy semua file ke dalam container | |
| COPY . . | |
| # Buat folder public di /tmp agar bisa ditulis di Hugging Face | |
| RUN mkdir -p /tmp/public && chmod -R 777 /tmp/public | |
| # Tampilkan isi folder untuk debugging | |
| RUN ls -lah | |
| # Expose port 7860 (sesuai dengan Hugging Face Spaces) | |
| EXPOSE 7860 | |
| # Jalankan aplikasi | |
| CMD ["npm", "run", "start"] | |