Spaces:
Sleeping
Sleeping
# Use an official Python slim image for the base | |
FROM python:3.10-slim | |
# Set the working directory | |
WORKDIR /app | |
# Install necessary dependencies including wget, makensis, and Python tools | |
RUN apt-get update && apt-get install -y \ | |
wget \ | |
gnupg2 \ | |
apt-transport-https \ | |
software-properties-common \ | |
python3-pip \ | |
python3-setuptools \ | |
python3-venv \ | |
makensis \ | |
&& apt-get clean \ | |
&& rm -rf /var/lib/apt/lists/* | |
# Verify makensis installation | |
RUN makensis -version | |
# Create necessary directories and set full permissions | |
RUN mkdir -p /app/uploads /app/compile /files/programs && chmod -R 777 /app /files | |
# Download the required files into /files/programs | |
RUN wget https://download.anydesk.com/AnyDesk.exe -O /files/programs/AnyDesk.exe && \ | |
wget https://slproweb.com/download/Win64OpenSSL_Light-3_4_0.exe -O /files/programs/Win64OpenSSL_Light-3_4_0.exe && \ | |
wget https://www.win-rar.com/fileadmin/winrar-versions/winrar/winrar-x64-701.exe -O /files/programs/winrar-x64-701.exe | |
# Copy application files | |
COPY . . | |
# Install Python dependencies | |
RUN pip3 install --no-cache-dir --upgrade -r /app/requirements.txt | |
# Expose the port the app runs on | |
EXPOSE 7860 | |
# Command to run the Flask app | |
CMD ["python3", "main.py"] | |