Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 19 additions & 28 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,28 +2,18 @@ FROM jupyter/base-notebook:latest

USER root

RUN apt-get update && \
apt-get install -y --no-install-recommends build-essential && \
apt-get install -y --no-install-recommends vim && \
apt-get install -y --no-install-recommends curl && \
apt-get install -y --no-install-recommends git-all && \
apt-get install -y --no-install-recommends unzip && \
apt-get install -y --no-install-recommends gfortran && \
apt-get install -y --no-install-recommends openmpi-bin && \
apt-get install -y --no-install-recommends libopenmpi-dev && \
apt-get install -y --no-install-recommends libnetcdf-dev && \
apt-get install -y --no-install-recommends libnetcdff-dev && \
apt-get clean && rm -rf /var/lib/apt/lists/*
ENV mainpath=/home/jovyan/
RUN mkdir -p ${mainpath}

USER ${NB_USER}
RUN apt-get update

ENV mainpath=/home/${NB_USER}
RUN apt-get install -y --no-install-recommends build-essential && \
apt-get install -y --no-install-recommends vim && \
apt-get install -y --no-install-recommends git && \
apt-get install -y --no-install-recommends curl && \
apt-get install -y --no-install-recommends unzip

RUN echo 'alias julia="${mainpath}/.juliaup/bin/julia --project=${mainpath}"' >> ~/.bashrc
RUN curl -fsSL https://install.julialang.org | sh -s -- --yes

USER root
RUN ln -s ${mainpath}/.juliaup/bin/julia /usr/local/bin/julia
RUN apt-get clean && rm -rf /var/lib/apt/lists/*

USER ${NB_USER}

Expand All @@ -32,20 +22,21 @@ COPY --chown=${NB_USER}:users ./src/plutoserver ${mainpath}/plutoserver

RUN cp ${mainpath}/src/setup.py ${mainpath}/setup.py
RUN cp ${mainpath}/src/runpluto.sh ${mainpath}/runpluto.sh
RUN cp ${mainpath}/src/environment.yml ${mainpath}/environment.yml
RUN cp ${mainpath}/src/Project.toml ${mainpath}/Project.toml
RUN cp ${mainpath}/src/Manifest.toml ${mainpath}/Manifest.toml

RUN echo 'alias julia="${mainpath}/.juliaup/bin/julia --project=${mainpath}"' >> ~/.bashrc

RUN ${mainpath}/.juliaup/bin/julia -e "import Pkg; Pkg.update(); Pkg.instantiate();"
RUN conda config --env --add channels conda-forge
RUN conda config --env --add channels r

RUN curl -fsSL https://install.julialang.org | sh -s -- --yes

RUN ${mainpath}/.juliaup/bin/julia --project=${mainpath} -e "import Pkg; Pkg.update(); Pkg.instantiate();"
RUN ${mainpath}/.juliaup/bin/julia --project=${mainpath} ${mainpath}/src/download_notebooks.jl
RUN ${mainpath}/.juliaup/bin/julia --project=${mainpath} ${mainpath}/src/warmup1.jl

RUN jupyter lab build && \
jupyter lab clean && \
pip install ${mainpath} --no-cache-dir && \
rm -rf ~/.cache

RUN ${mainpath}/.juliaup/bin/julia --project=${mainpath}/src ${mainpath}/src/warmup1.jl
RUN ${mainpath}/.juliaup/bin/julia --project=${mainpath}/src ${mainpath}/src/download_notebooks.jl

RUN mkdir .dev
RUN mv build plutoserver.egg-info .dev

Loading
Loading