Skip to content

Requirements to run the examples in the guide

To learn how to use CWL in the Earth Observation context, you'll need two tools:

  • A CWL runner
  • Docker

CWL runner

CWL is a set of open standards for describing computational workflows. These workflows are executed using a CWL runner and there are several implementations of such runners.

We recommend cwltool and one of the easiest way to install it is to use micromamba and install cwltool in the base environment.

Linux

Install micromamba

wget -qO- https://micromamba.snakepit.net/api/micromamba/linux-64/latest | tar -xvj bin/micromamba --strip-components=1
sudo mv bin/micromamba /usr/local/bin/micromamba
sudo chmod +x /usr/local/bin/micromamba

Initialize the shell:

micromamba shell init -s bash -p ~/micromamba
source ~/.bashrc

Install cwltool

micromamba activate
micromamba install -c conda-forge cwltool

Test the installation with:

which cwltool

This must return the path to the cwltool executable.

MacOS X

Install micromamba:

curl -Ls https://micromamba.snakepit.net/api/micromamba/osx-64/latest | tar -xvj bin/micromamba
sudo mv bin/micromamba /usr/local/bin/micromamba
sudo chmod +x /usr/local/bin/micromamba

Initialize the shell with:

micromamba shell init -s zsh -p ~/micromamba
source ~/.zshrc

Activate micromamba and install cwltool in the base environment:

micromamba activate
micromamba install -c conda-forge cwltool

Windows

TBW.

Test the CWL runner installation with:

cwltool --help

This must return the path to the cwltool executable.

Docker

Linux

For Linux users, check how to install docker here: https://docs.docker.com/engine/install/#server.

Mac OS X

Install Docker Desktop following the instructions found in https://docs.docker.com/desktop/mac/install/.

Windows 10 Pro

Install Docker Desktop following the instructions found in https://docs.docker.com/desktop/windows/install/.

Testing your docker installation

Test your installation in a terminal with:

$ docker run hello-world

After the container image pull, this returns:

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/
$ docker images hello-world

This outputs:

REPOSITORY   TAG     IMAGE ID      SIZE
hello-world  latest  d1165f221234  13336

References