File size: 1,140 Bytes
66030fa 511bc62 c0616b4 6992e29 66030fa da5c857 6992e29 da5c857 6992e29 da5c857 f1bd50d da5c857 66030fa 0d321d4 da5c857 7182945 da5c857 7182945 66030fa ea37cb1 da5c857 6992e29 c0616b4 66030fa 6992e29 66030fa 3b6b10b 66030fa da5c857 6992e29 66030fa da5c857 7950999 |
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 39 40 41 42 43 44 45 46 47 |
FROM jupyter/scipy-notebook
# Set the working directory to /app
WORKDIR /app
# Copy the requirements file
COPY requirements.txt .
COPY public /app/public
# Switch to root user to install system packages and set permissions
USER root
# Install the dependencies
RUN apt-get update && apt-get install -y wget nginx && pip install -r requirements.txt
# Copy the configuration files and entrypoint script
COPY jupyter_config.py /etc/jupyter/jupyter_config.py
COPY nginx.conf /etc/nginx/nginx.conf
COPY entrypoint.sh /app/entrypoint.sh
# Set the entrypoint script as executable
RUN chmod +x /app/entrypoint.sh
# Set the permissions for the app directory to the existing user
RUN chown -R ${NB_UID}:${NB_GID} /app
# Switch back to the original user
USER ${NB_UID}
# Set the working directory for the user
WORKDIR /home/${NB_USER}/app
# Expose the port 8888 for JupyterLab
EXPOSE 8888
# Expose the port 7860 for Nginx
EXPOSE 7860
# Set the environment variables
ENV JUPYTERLAB_PORT=8888
ENV JUPYTERLAB_TOKEN=your_secret_token
ENV NGINX_PORT=7860
# Run the entrypoint script when the container starts
ENTRYPOINT ["/app/entrypoint.sh"]
|