Skip to content

Setting up your system

Tibor Šimko edited this page Aug 8, 2024 · 4 revisions

Contents

  1. About
  2. Linux
  3. macOS
  4. Windows (Using WSL)
  5. Next steps

About

In the Before you start you have explored REANA on your laptop from the point of view of a researcher. In this page we'll set up the laptop for REANA development. This will require to pay attention to certain things.

The REANA development is most comfortable on Linux and macOS systems.

Linux

Linux runs containers natively and so is a very good choice for a REANA development platform. Any Linux distribution should do. In experimental particle physics, CentOS/Fedora/RHEL-based distributions are usually used in production systems, and are also primary platforms for many HEP-specific software packages such as XRootD. Consequently, Fedora might be a good Linux distribution choice. We shall use it in the examples below.

At this point, you should have Docker, Kubectl, Kind, and Helm dependencies set up from the Before you start times. If not:

$ # install docker
$ sudo dnf -y install dnf-plugins-core
$ sudo dnf config-manager \
    --add-repo \
    https://download.docker.com/linux/fedora/docker-ce.repo
$ sudo dnf install docker-ce docker-ce-cli containerd.io
$ sudo systemctl enable --now docker
$ sudo usermod -aG docker $USER

$ # install kubectl
$ sudo dnf install kubernetes-client

$ # install kind (from release binaries)
$ curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.11.1/kind-linux-amd64
$ chmod +x ./kind
$ sudo mv ./kind /usr/local/bin

$ # install helm
$ sudo dnf install helm

The novel part in the REANA development is that we would like to be able to comfortably test reana-client with any supported Python version that REANA users can use, which is 3.8+ at this time. We can install them as follows:

$ sudo dnf install python38 python39 python310 python311 python312

macOS

macOS is another good choice for REANA development platform. Unlike Linux, macOS doesn't run containers natively, and so a "transient" virtual machine is necessary.

Please don't forget to give sufficient memory to the Docker virtual machine. At least 6 CPUs, 8 GB RAM, and 60 GB disk space is recommended. You can set these values in "Docker Desktop for Mac" resource preferences:

macos-docker-desktop-settings

Installing several Python versions can be done via pyenv. We recommend to use Homebrew:

$ brew install pyenv

Windows (Using WSL)

Windows Subsystem for Linux (WSL) allows you to run a Linux distribution alongside your Windows installation. This is a good choice for REANA development on Windows.

Install WSL

  1. Open PowerShell or Windows Command Prompt in administrator mode by right-clicking and selecting "Run as administrator."

  2. Enter the following command to install WSL:

    wsl --install
  3. Follow the on-screen instructions to complete the installation. This command will enable the Windows Subsystem for Linux feature and download a Linux distribution of your choice from the Microsoft Store.

  4. After the installation is complete, you'll need to restart your machine.

  5. Once your machine has restarted, open the Microsoft Store and search for a Linux distribution (e.g., Ubuntu) and install it. This will set up your Linux environment on WSL.

  6. Launch the Linux distribution you installed from the Start menu or by typing its name in the command prompt.

More information on installing WSL can be found here.

Set Up Development Tools in WSL

After you have WSL installed and a Linux distribution set up, you can follow the Linux instructions mentioned earlier to set up the required development tools for REANA inside your WSL environment.

Remember that with WSL, you have the flexibility to run Linux-based development tools while still using your Windows system.

Next steps

The next step is to fork and clone REANA source code to have it available locally. Please proceed to Cloning sources.