| FROM python:3.11-slim |
|
|
| |
| RUN apt-get update && apt-get install -y \ |
| curl gnupg git nginx \ |
| make g++ python3-dev \ |
| && curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \ |
| && apt-get install -y nodejs \ |
| && rm -rf /var/lib/apt/lists/* |
|
|
| |
| RUN npm install -g @agentscope/studio |
|
|
| |
| WORKDIR /app |
| COPY requirements.txt . |
| RUN pip install --no-cache-dir -r requirements.txt |
|
|
| |
| COPY backend/ ./backend/ |
| COPY frontend/ ./frontend/ |
| COPY entrypoint.sh . |
| RUN chmod +x entrypoint.sh |
|
|
| |
| RUN useradd -m -u 1000 user \ |
| && chown -R user /app \ |
| && chown -R user /var/log/nginx \ |
| && chown -R user /var/lib/nginx \ |
| && chown -R user /etc/nginx \ |
| && touch /run/nginx.pid \ |
| && chown user /run/nginx.pid |
| USER user |
|
|
| EXPOSE 7860 |
| ENTRYPOINT ["./entrypoint.sh"] |
|
|