Install the Renku Command-line Interface
The Python-based command-line interface (CLI) and the Python API that we call
renku
is available for use via RenkuLab sessions, and you can
also install it on your local machine. Most available CLI commands are
documented in our cheatsheet
.
Local installation with the script manager pipx
Install and execute renku in an isolated environment using pipx
.
It will guarantee that there are no version conflicts with dependencies
you are using for your work and research.
Note
This is the method of installation in the Renku docker images, i.e. the default environment you use when you launch a JupyterLab session via the Renku browser interface.
Install pipx
and make sure that the $PATH
is correctly configured.
$ python3 -m pip install --user pipx
$ python3 -m pipx ensurepath
Once pipx
is installed use following command to install renku
.
$ pipx install renku
$ which renku
~/.local/bin/renku
Upgrading
To upgrade renku to the latest stable version:
$ pipx upgrade renku
To install renku at a specific version:
$ pipx install --force renku==0.10.3
To upgrade to the latest development version:
$ pipx upgrade --pip-args=--pre renku
If you run into dependency problems during the CLI installation, have a look at the CLI installation problems.
pip
/pipenv
For development or if the above methods do not work for you, Renku can also
be installed with pip
or pipenv
:
pip install --pre renku
If you want to have Renku as a project dependency, you may install it using
pipenv
in your project’s directory:
pipenv install --pre renku
pipenv shell
Installing from source
Using conda
, we can very easily install renku from source into an isolated
environment.
Bleeding-edge
To install the latest bleeding-edge version of renku and keep it from
polluting your application environment, an easy solution is to place it inside
an isolated conda
environment. If you don’t have conda
already, you
should install miniconda. Once you have
it installed, you can run
conda create -y -n renku python=3.9
$(conda env list | grep '^renku\s' | awk '{print $2}')/bin/pip install -e git+https://github.com/SwissDataScienceCenter/renku-python.git#egg=renku
mkdir -p ~/.renku/bin
ln -s "$(conda env list | grep '^renku\s' | awk '{print $2}')/bin/renku" ~/.renku/bin/renku
This will create an isolated environment for renku and link the binary to
.renku/bin
in your home directory. If you want to use it, you should
add this to your PATH
:
export PATH=~/.renku/bin:$PATH
If you want it to be done automatically for your shell (bash), add it to .bashrc
:
echo "export PATH=~/.renku/bin:$PATH" >> $HOME/.bashrc
source $HOME/.bashrc
When you want to update the installed version again, simply do
$(conda env list | grep '^renku\s' | awk '{print $2}')/bin/pip install -e git+https://github.com/SwissDataScienceCenter/renku-python.git#egg=renku
Specific version
To install a specific version of renku the procedure is nearly identical
the above, but instead of installing from source you install a version with pip
.
For example, after creating the conda
environment as described in the previous
section, you can install renku v0.3.0 with
$(conda env list | grep '^renku\s' | awk '{print $2}')/bin/pip install renku==0.3.0
Note
You may get a ValueError: unknown locale: UTF-8
- see here for
instructions on how to fix it.
CLI installation problems
psutil
failure during renku CLI execution or installation
Using pip
or pipx
can result in a failure of the psutil
dependency
to install correctly. For example:
pipx install renku
...
/root/.local/pipx/venvs/renku/include/site/python3.7/psutil" failed with error code 1 in /tmp/pip-install-c7z7y8vs/psutil/
'/root/.local/pipx/venvs/renku/bin/python -m pip install renku -q' failed
This can be solved in *nix systems by installing the musl
library. For
example, on Ubuntu:
# install the musl library and headers
apt-get install musl-dev
# link the library
ln -s /usr/lib/x86_64-linux-musl/libc.so /lib/libc.musl-x86_64.so.1