Spaces:
Paused
Paused
File size: 841 Bytes
2bc9dbc 9e5ca13 2bc9dbc 64f269d 2bc9dbc 9e5ca13 2bc9dbc 0742a9b 9e5ca13 2bc9dbc 0742a9b 64f269d 2bc9dbc cc3cf50 |
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 |
# Use Node.js 18 base image
FROM node:18
# Install build tools for node-pty, python3-pip, and sudo
RUN apt-get update && apt-get install -y \
python3 \
python3-pip \
make \
g++ \
sudo \
&& rm -rf /var/lib/apt/lists/*
# Allow root to use sudo without a password (optional, since we're already root)
RUN echo "root ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/root
# Set working directory
WORKDIR /app
# Copy package.json and install dependencies
COPY package.json .
RUN npm install
# Copy application files
COPY . .
# Create run.sh script
RUN echo '#!/bin/bash' > run.sh && \
echo 'docker run --security-opt no-new-privileges=false -p 7860:7860 <your-image-name>' >> run.sh && \
chmod +x run.sh
# Ensure the container runs as root
USER root
# Expose port 7860
EXPOSE 7860
# Start the application
CMD ["npm", "start"] |