Strumenti Utente

Strumenti Sito


calcoloscientifico:cluster:softwareapplicativo:conda_user

Questa è una vecchia versione del documento!


CONDA user defined environments

Users or groups can build their own environments.

Template for users or groups

hpc-make-condaenv-template.sh
#!/bin/bash
 
set -e
 
module load miniconda3-test
 
source "$CONDA_PREFIX/etc/profile.d/conda.sh"
 
CONDAENV_NAME='template'
CONDAENV_VERSION=$(date '+%Y.%m.%d')
PYTHON_VERSION='3.6'
 
CONDAENV="${CONDAENV_NAME}-${CONDAENV_VERSION}"
 
if [ $UID = 0 ]; then
    CONDAENV_PREFIX="/hpc/share/tools/miniconda3/envs/$CONDAENV"
    CONDAENV_SYMLNK="/hpc/share/tools/miniconda3/envs/$CONDAENV_NAME"
else
    if [ -z "$CONDA_ENVS_PATH" ]; then
        echo 'Error: the CONDA_ENVS_PATH envarionment variable is not set' 1>&2
        exit 1
    fi
    if [ -z "$CONDA_PKGS_DIRS" ]; then
        echo 'Error: the CONDA_PKGS_DIRS envarionment variable is not set' 1>&2
        exit 1
    fi
    echo "CONDA_ENVS_PATH: $CONDA_ENVS_PATH"
    echo "CONDA_PKGS_DIRS: $CONDA_PKGS_DIRS"
    CONDAENV_PREFIX="$CONDA_ENVS_PATH/$CONDAENV"
    CONDAENV_SYMLNK="$CONDA_ENVS_PATH/$CONDAENV_NAME"
fi
 
echo "CONDAENV_PREFIX: $CONDAENV_PREFIX"
echo "CONDAENV_SYMLNK: $CONDAENV_SYMLNK"
echo
echo -n "Should we proceed with the creation of the condaenv '$CONDAENV_NAME' (yes/no)? "
 
read ans
 
case "$ans" in
    [yY]|[yY][Ee][Ss])
    ;;
    [nN]|[nN][oO])
    exit 1
    ;;
    *)
    echo
    exec "$0"
    exit
    ;;
esac
 
conda info
 
if [ $UID = 0 ]; then
    conda --version
    conda update conda
    conda --version
fi
 
if [ -d "$CONDAENV_PREFIX" ]; then
    conda env remove --name "$CONDAENV"
fi
 
conda create --yes --name "$CONDAENV" python=$PYTHON_VERSION
 
conda activate "$CONDAENV"
 
conda install --yes --name "$CONDAENV" \
--channel conda-forge \
7zip
 
conda list || true
 
conda deactivate
 
ln -sf "$CONDAENV_PREFIX" "$CONDAENV_SYMLNK"
ls -la "$CONDAENV_SYMLNK"*

This script is located in

/hpc/share/tools/conda/bin/hpc-make-condaenv-template

Creating a user environment

Create a script from the template and run it.

Creating a group environment

Change group:

newgrp <GROUP>

Create a script from the template and run it.

The "base" environment

[<USER>@ui01 ~]$ module load miniconda3
[<USER>@ui01 ~]$ source "$CONDA_PREFIX/etc/profile.d/conda.sh"
[<USER>@ui01 ~]$ conda --help
[<USER>@ui01 ~]$ conda --version
conda 4.9.2

[<USER>@ui01 ~]$ conda info

[<USER>@ui01 ~]$ conda activate

(base) [<USER>@ui01 ~]$ which python

/hpc/share/tools/miniconda3/bin/python

(base) [<USER>@ui01 ~]$ python -V
Python 3.7.4

(base) [<USER>@ui01 ~]$ conda deactivate
conda search sklearn

Alternate channels

To search for alternate channels that may provide the conda package you're looking for, navigate to https://anaconda.org and use the search bar at the top of the page.

To add a new channel:

conda config --add channels conda-forge

Environment

With conda, you can create, export, list, remove, and update environments that have different versions of Python and/or packages installed in them. Switching or moving between environments is called activating the environment.

Environments list

To see a list of all available environments run:

conda env list

References

calcoloscientifico/cluster/softwareapplicativo/conda_user.1616062831.txt.gz · Ultima modifica: 18/03/2021 11:20 da fabio.spataro

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki