This commit is contained in:
2025-12-13 21:16:37 +00:00
parent 9511a0784c
commit 1a44726c4f
4 changed files with 146 additions and 0 deletions

50
Dockerfile Normal file
View File

@ -0,0 +1,50 @@
# Use the development container, which includes necessary CUDA libraries and the CUDA Compiler.
FROM nvidia/cuda:12.8.1-cudnn-devel-ubuntu22.04
# could this be a better base image? pytorch/pytorch:2.5.1-cuda12.4-cudnn9-runtime
# Set system variables
ENV DEBIAN_FRONTEND=noninteractive
ENV NVIDIA_VISIBLE_DEVICES=all
ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility
ENV CUDA_HOME=/usr/local/cuda
ENV PATH="$CUDA_HOME/bin:$PATH"
ENV LD_LIBRARY_PATH="$CUDA_HOME/lib64:$LD_LIBRARY_PATH"
# Ensure Python outputs everything that's printed inside the application
# (solvws the issue of not seeing the output of the application in the container)
ENV PYTHONUNBUFFERED=1
# Dynamic memory allocation for PyTorch in order to reduce memory fragmentation.
# (reduces risk of OOM eerors in low VRAM scenarios)
ENV PYTORCH_CUDA_ALLOC_CONF="expandable_segments:True"
# Software configuration
ENV PINOKIO_DOWNLOAD_URL=https://github.com/pinokiocomputer/pinokio/releases/download/v5.1.10/Pinokio_5.1.10_amd64.deb
# Install system dependencies required by Pinokio and VNC
RUN apt update \
&& apt install -y \
wget git xdg-utils \
libgtk-3-0 libnotify4 libnss3 libxss1 libxtst6 \
libatspi2.0-0 libsecret-1-0 libappindicator3-1 \
libgbm1 libasound2 \
xvfb \
dbus dbus-x11 \
libcudnn8 \
&& rm -rf /var/lib/apt/lists/*
# Download and install the Pinokio .deb package
RUN wget -O pinokio.deb $PINOKIO_DOWNLOAD_URL
RUN apt install -y ./pinokio.deb && rm pinokio.deb
# Folder structures and assets
RUN mkdir /app
WORKDIR /app
COPY config.json config.json
COPY startup.sh startup.sh
RUN chmod +x startup.sh
EXPOSE 42000
CMD ["./startup.sh"]