FROM python:3.11-slim-bookworm ENV DEBIAN_FRONTEND=noninteractive ENV PYTHONDONTWRITEBYTECODE=1 ENV PYTHONUNBUFFERED=1 WORKDIR /app # Base tools + git for npm git-based dependencies RUN apt-get update && apt-get install -y --no-install-recommends \ curl \ ca-certificates \ gnupg \ git \ && rm -rf /var/lib/apt/lists/* # Node.js 22+ for OpenClaw RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \ && apt-get update \ && apt-get install -y --no-install-recommends nodejs \ && rm -rf /var/lib/apt/lists/* # Sanity check RUN node --version && npm --version && git --version # Install OpenClaw RUN npm install -g openclaw@latest COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY app.py . EXPOSE 7860 CMD ["python", "app.py"]