FROM nvcr.io/nvidia/physicsnemo/physicsnemo:25.08 ENV DEBIAN_FRONTEND=noninteractive USER root # Create non-root user and set up directories RUN useradd -m -u 1001 user && \ mkdir -p /home/user/.cache /home/user/.config /home/user/.local /home/user/.local/share/jupyter && \ chmod -R 777 /home/user && \ mkdir /mhd-demo && chown user:user /mhd-demo && chmod 777 /mhd-demo USER user ENV HOME=/home/user ENV PATH=/home/user/.local/bin:$PATH WORKDIR $HOME/app # Upgrade pip RUN python -m pip install --upgrade pip # # Copy all files at once COPY --chown=user on_startup.sh README.md start_server.sh requirements.txt ./ COPY --chown=user login.html /usr/local/lib/python3.12/dist-packages/jupyter_server/templates/login.html COPY --chown=user magnetohydrodynamics.ipynb /mhd-demo/ COPY --chown=user mhd /mhd-demo/mhd/ RUN chmod +x start_server.sh && \ chmod -R 777 /mhd-demo/ && \ pip install -r requirements.txt EXPOSE 7860 CMD ["./start_server.sh"]