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.

General template

General model that can be used to create personal or group environments:

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.

Work session with conda

[<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

[<USER>@ui01 ~]$
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.1616063081.txt.gz · Ultima modifica: 18/03/2021 11:24 da fabio.spataro

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki