Conda#
Conda es un gestor paquetes y entornos de software libre utilizado sobre todo para paquetes de Python y R del ámbito científico, aunque también soporte otros lenguajes como C, C++, FORTRAN, Java, Scale, Ruby y Lua.
Utilizar Conda en TeideHPC#
Una vez nos hayamos conectados a los nodos de login, tendremos que cargar el módulo de miniconda
para empezar a utilizar conda:
Una vez cargado el software, podemos, por ejemplo, ver la información de la versión de conda:
conda info
active environment : None
user config file : /home/vjuidias/.condarc
populated config files : /home/vjuidias/.condarc
conda version : 4.7.10
conda-build version : not installed
python version : 2.7.16.final.0
virtual packages :
base environment : /opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10 (read only)
channel URLs : https://conda.anaconda.org/conda-forge/linux-64
https://conda.anaconda.org/conda-forge/noarch
https://conda.anaconda.org/bioconda/linux-64
https://conda.anaconda.org/bioconda/noarch
https://repo.anaconda.com/pkgs/main/linux-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/r/linux-64
https://repo.anaconda.com/pkgs/r/noarch
https://conda.anaconda.org/r/linux-64
https://conda.anaconda.org/r/noarch
package cache : /opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/pkgs
/home/vjuidias/.conda/pkgs
envs directories : /home/vjuidias/.conda/envs
/opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/envs
platform : linux-64
user-agent : conda/4.7.10 requests/2.22.0 CPython/2.7.16 Linux/3.10.0-327.el7.x86_64 centos/7.2.1511 glibc/2.17
UID:GID : 1136:1136
netrc file : None
offline mode : False
Ahora tenemos que inicializar la shell para utilizar Conda. Este paso es solo es necesario la primera vez. Si no lo hacemos, al utilizar conda, nos saldrá este mensaje:
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
To initialize your shell, run
$ conda init <SHELL_NAME>
Currently supported shells are:
- bash
- fish
- tcsh
- xonsh
- zsh
- powershell
See 'conda init --help' for more information and options.
IMPORTANT: You may need to close and restart your shell after running 'conda init'.
Por tanto, lo que tenemos que hacer es:
conda init bash
no change /opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/condabin/conda
no change /opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/bin/conda
no change /opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/bin/conda-env
no change /opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/bin/activate
no change /opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/bin/deactivate
no change /opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/etc/profile.d/conda.sh
no change /opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/etc/fish/conf.d/conda.fish
no change /opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/shell/condabin/Conda.psm1
no change /opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/shell/condabin/conda-hook.ps1
no change /opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/lib/python2.7/site-packages/xontrib/conda.xsh
no change /opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/etc/profile.d/conda.csh
modified /home/vjuidias/.bashrc
==> For changes to take effect, close and re-open your current shell. <==
Al hacer esto se nos ha modificado la shell, en este caso, la bash. Se nos han añadido las siguientes líneas en el fichero ~/.bashrc`:
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/etc/profile.d/conda.sh" ]; then
. "/opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/etc/profile.d/conda.sh"
else
export PATH="/opt/envhpc/slurm19/rhel7/Miniconda2/4.7.10/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
Para que tenga efecto los cambios, tenemos que salir del nodo de login y volver a entrar. Una vez hecho, ya podremos utilizar conda, instalar paquetes y crear entornos.
Crear un entorno en /data#
Por defecto, Conda creará un entorno e instalará todo el software en el /home
del usuario. Este almacenamiento esta limitado en tamaño, así que deberíamos configurar los entornos e instalar el software en la partición de /data
. Para hacer esto, simplemente tenemos que especificarle a Conda la ruta:
conda create -p data/myenvironment mysoftware
Collecting package metadata (current_repodata.json): done
Solving environment: done
## Package Plan ##
environment location: /data/vjuidias/myenvironment
...
Y lo activamos de la misma manera, especificando la ruta:
4 11 18