Installation prerequisites

Kedro supports macOS, Linux and Windows (7 / 8 / 10 and Windows Server 2016+). If you encounter any problems on these platforms, please check the FAQ, and / or the Kedro community support on Stack Overflow.

macOS / Linux

In order to work effectively with Kedro projects, we highly recommend you download and install Anaconda (Python 3.x version) and Java (if using PySpark).

Build tools

On Unix-like operating systems, you will need to install a C compiler and related build tools for your platform. This is due to the inclusion of the memory-profiler library in our dependencies. If your operating system is not mentioned, please refer to its documentation.

macOS

To install Command Line Tools for Xcode, run the following from the terminal:

xcode-select --install

GNU/Linux

Debian/Ubuntu

The following command (run with root permissions) will install the build-essential metapackage for Debian-based distributions:

apt-get update && apt-get install build-essential

Red Hat Enterprise Linux / Centos

The following command (run with root permissions) will install the “Develop Tools” group of packages on RHEL/Centos:

yum groupinstall 'Development Tools'

Windows

You will require admin rights to complete the installation of the following tools on your machine:

Python virtual environments

Python’s virtual environments can be used to isolate the dependencies of different individual projects, avoiding Python version conflicts. They also prevent permission issues for non-administrator users. For more information, please refer to this guide.

Using conda

We recommend creating your virtual environment using conda, a package and environment manager program bundled with Anaconda.

Create an environment with conda

Use conda create to create a python 3.6 environment called environment_name by running:

conda create --name environment_name python=3.6

Activate an environment with conda

Use conda activate to activate an environment called environment_name by running:

conda activate environment_name

When you want to deactivate the environment you are using with Kedro, you can use conda deactivate:

conda deactivate

Other conda commands

To list all existing conda environments:

conda env list

To delete an environment:

conda remove --name environment_name --all

Alternatives to conda

If you prefer an alternative environment manager such as venv, pyenv, etc, please read their respective documentation.