Newer
Older
ARG RENKU_BASE_IMAGE=renku/renkulab-py:3.7-0.7.2
FROM ${RENKU_BASE_IMAGE}
# FROM renku/renkulab-py:3.7-renku0.15.1-0.6.3
# see https://github.com/SwissDataScienceCenter/renkulab-docker
# to swap this image for the latest version available
# Uncomment and adapt if code is to be included in the image
# COPY src /code/src
# Uncomment and adapt if your R or python packages require extra linux (ubuntu) software
# e.g. the following installs apt-utils and vim; each pkg on its own line, all lines
# except for the last end with backslash '\' to continue the RUN line
USER root
RUN apt-get update && \
apt-get install -y --no-install-recommends \
# install the python dependencies
COPY requirements.txt environment.yml /tmp/
RUN conda env update -q -f /tmp/environment.yml && \
/opt/conda/bin/pip install -r /tmp/requirements.txt && \
conda clean -y --all && \
conda env export -n "root"
# Tensorboard extension
RUN jupyter labextension install jupyterlab_tensorboard && \
# RENKU_VERSION determines the version of the renku CLI
# that will be used in this image. To find the latest version,
# visit https://pypi.org/project/renku/#history.
########################################################
# Install renku from pypi or from github if it's a dev version
currentversion=$(pipx list | sed -n "s/^\s*package\srenku\s\([^,]\+\),.*$/\1/p") ; \
if [ "$RENKU_VERSION" != "$currentversion" ] ; then \
pipx uninstall renku ; \
/home/jovyan/.local/pipx/shared/bin/pip install setuptools==57.5.0; \
gitversion=$(echo "$RENKU_VERSION" | sed -n "s/^[[:digit:]]\+\.[[:digit:]]\+\.[[:digit:]]\+\(\.dev[[:digit:]]\+\)*\(+g\([a-f0-9]\+\)\)*\(+dirty\)*$/\3/p"); \
if [ -n "$gitversion" ] ; then \
pipx install --force "git+https://github.com/SwissDataScienceCenter/renku-python.git@$gitversion" ;\
else \
pipx install --force renku==${RENKU_VERSION} ;\
fi \
fi \
fi