Conda: Difference between revisions

From Fluids Wiki
Jump to navigation Jump to search
 
(12 intermediate revisions by the same user not shown)
Line 1: Line 1:
Conda is a powerful package manager and environment manager for Python. It has a large collection of packages that often are newer than what comes with the operating system.
Conda is a powerful package and environment manager. It has a large collection of packages that often are newer than what comes with the operating system.


Conda packages are neatly contained under your home directory in an environment. Adding or removing packages does not require root access or server administrative privilege.
Conda packages are neatly contained under your home directory in an environment. Adding or removing packages does not require root access or server administrative privilege.
Line 21: Line 21:
wget https://repo.anaconda.com/miniconda/Miniconda3-py39_4.10.3-Linux-x86_64.sh
wget https://repo.anaconda.com/miniconda/Miniconda3-py39_4.10.3-Linux-x86_64.sh
chmod +x Miniconda3-py39_4.10.3-Linux-x86_64.sh
chmod +x Miniconda3-py39_4.10.3-Linux-x86_64.sh
./Miniconda3-py39_4.10.3-Linux-x86_64.sh
./Miniconda3-py39_4.10.3-Linux-x86_64.sh -b -s -p "$HOME/miniconda3"


# Run the following to have the conda command available on your shell
# Run the following to have the conda command available on your shell
source ~/miniconda3/etc/profile.d/conda.sh
source $HOME/miniconda3/etc/profile.d/conda.sh
# if using tcsh or csh, run this instead: source ~/miniconda3/etc/profile.d/conda.csh
# if using tcsh or csh, run this instead: source $HOME/miniconda3/etc/profile.d/conda.csh


# HINT: you can add the source script to ~/.bashrc or ~/.cshrc so conda is available on next login.
# HINT: you can add the source script to ~/.bashrc or ~/.cshrc so conda is available on next login.
Line 31: Line 31:
# Create an environment. You can do this for each project or make a generic one to reuse
# Create an environment. You can do this for each project or make a generic one to reuse
conda create --name mymath
conda create --name mymath
# Activate the environment
conda activate mymath
conda activate mymath


# Examples installing packages using conda into the environment:
# Examples installing packages into the conda environment:
conda install python
# HINT: try and install everything in one line so conda can resolve dependencies.
conda install python scipy numpy imageio ipython matplotlib
conda install mkl gcc_linux-64
conda install mkl gcc_linux-64
conda install scipy numpy imageio ipython matplotlib
# pip also works smoothly with the environment
# pip also works smoothly with the conda environment
pip install requests
pip install requests


# Check we are using miniconda3
# Check we are using our personal python binary
which python
which python
> /home/myuser/miniconda3/envs/mymath/bin/python
> /home/myuser/miniconda3/envs/mymath/bin/python


# Unlink the current activated conda environment and check which python is selected
# Unlink the current conda environment and check which python is selected
conda deactivate
conda deactivate
which python
which python
> /usr/bin/python
> /usr/bin/python
# After a fresh log in, do the following to return to your environment:
source $HOME/miniconda3/etc/profile.d/conda.sh  # or conda.csh
conda activate myenvname
</pre>
</pre>

Latest revision as of 14:05, 7 January 2022

Conda is a powerful package and environment manager. It has a large collection of packages that often are newer than what comes with the operating system.

Conda packages are neatly contained under your home directory in an environment. Adding or removing packages does not require root access or server administrative privilege.

These Conda environments are most helpful when a package cannot be installed globally because it could cause breakage for other users, or when you need multiple versions of a package.


Getting started

See the "Miniconda quick start guide" below, or the Conda guide: https://docs.conda.io/projects/conda/en/latest/user-guide/getting-started.html

We suggest miniconda over anaconda because it takes a minimalistic approach.

Miniconda quick start guide

Here is a short guide to get you started. Feel free to use a different tag than "mymath".

# Install
wget https://repo.anaconda.com/miniconda/Miniconda3-py39_4.10.3-Linux-x86_64.sh
chmod +x Miniconda3-py39_4.10.3-Linux-x86_64.sh
./Miniconda3-py39_4.10.3-Linux-x86_64.sh -b -s -p "$HOME/miniconda3"

# Run the following to have the conda command available on your shell
source $HOME/miniconda3/etc/profile.d/conda.sh
# if using tcsh or csh, run this instead: source $HOME/miniconda3/etc/profile.d/conda.csh

# HINT: you can add the source script to ~/.bashrc or ~/.cshrc so conda is available on next login.

# Create an environment. You can do this for each project or make a generic one to reuse
conda create --name mymath

# Activate the environment
conda activate mymath

# Examples installing packages into the conda environment:
# HINT: try and install everything in one line so conda can resolve dependencies.
conda install python scipy numpy imageio ipython matplotlib
conda install mkl gcc_linux-64
# pip also works smoothly with the environment
pip install requests

# Check we are using our personal python binary
which python
> /home/myuser/miniconda3/envs/mymath/bin/python

# Unlink the current conda environment and check which python is selected
conda deactivate
which python
> /usr/bin/python

# After a fresh log in, do the following to return to your environment:
source $HOME/miniconda3/etc/profile.d/conda.sh  # or conda.csh
conda activate myenvname