Spaces:
Running
Running
File size: 1,646 Bytes
8c50282 45b512c 8c50282 704910f 8c50282 704910f 45b512c d13b735 45b512c 8c50282 45b512c 8c50282 d80577a 8c50282 d80577a 8c50282 45b512c 8c50282 24796e5 d214834 8c50282 1ba18d7 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | # 1. Node.js का स्टेबल वर्जन
FROM node:18-slim
# 2. सभी ज़रूरी सिस्टम टूल्स (git, python, gcc, make, nano, zip)
RUN apt-get update && apt-get install -y \
curl \
bash \
git \
python3 \
python3-pip \
build-essential \
gcc \
g++ \
make \
nano \
zip \
unzip \
&& rm -rf /var/lib/apt/lists/*
# 3. OpenCode इंस्टॉल करें
RUN curl -fsSL https://opencode.ai/install | bash
# 4. डेटा फोल्डर और रूट परमिशन सेटअप
USER root
RUN mkdir -p /data && chmod 777 /data
WORKDIR /data
# 5. एनवायरनमेंट सेटिंग्स (सिर्फ पाथ और डेटा डायरेक्टरी)
ENV OPENCODE_DATA_DIR=/data
ENV HOME=/data
ENV PATH="/root/.local/bin:/home/node/.local/bin:$PATH"
# 6. पोर्ट 7860 एक्सपोज़ करें (Hugging Face के लिए ज़रूरी)
EXPOSE 7860
# 7. फाइनल कमांड: Git सेट करना और Secrets को सीधे Inject करना
# यहाँ हमने OPENCODE_SERVER_PASSWORD को सीधे 'opencode web' के साथ जोड़ दिया है
CMD ["bash", "-c", "\
git config --global user.email 'badal@example.com' && \
git config --global user.name 'Badal' && \
export PATH=$PATH:$(find / -name opencode -type f -printf '%h' -quit 2>/dev/null); \
OPENCODE_SERVER_USERNAME=${HF_USERNAME} \
OPENCODE_SERVER_PASSWORD=${HF_PASSWORD} \
opencode web --port 7860 --hostname 0.0.0.0"]
|