Opencode.dev / Dockerfile
bk939448's picture
Update Dockerfile
8c50282 verified
# 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"]