Skeleton page!
You should avoid using conda through the Anaconda or Miniconda distributions, as you may run into licensing issues. Access to Anaconda’s public repository of packages is only free to individuals and small organisations (<200 employees). A paid license is required for larger organisations and anyone embedding or mirroring Anaconda’s repository. See Anaconda's Terms of Service for details.
The use of Miniforge is recommended instead, which provides the minimal installers for Conda and Mamba specific to conda-forge, with the following features pre-configured:
- Packages in the base environment are obtained from the conda-forge channel.
- The conda-forge channel is set as the default (and only) channel.
If working on ECMWF's Atos HPCF or ECS , you can (in order of preference):
- Use tykky, which uses Miniforge internally.
- Use provided conda module, which is based on Miniforge
- Install Miniforge on your own space (discouraged in favour of above alternatives, to be used only if those solutions cannot satisfy your requirements).
If working on personal laptops of or any other ECMWF computing platform, including the European Weather Cloud:
- Install Miniforge, migrate your environments and remove the previous anaconda/miniconda installation.
How to check if any of my installations or environments are problematic
- On ECMWF's Atos HPCF or ECS:
/usr/local/apps/conda/conda_licensed_envs
- On any other platform: < add here link to a downloadable copy of conda_licensed_envs >
- In order for it to work, these are the requirements (Any Linux or Mac platform should work out of the box):
- bash
- cat
- grep
- In order for it to work, these are the requirements (Any Linux or Mac platform should work out of the box):
Checking manually
- if using your own installation, check LICENSE or LICENSE.txt file at the root of the installation. If they contain the Anaconda Terms of Service, then you are using Anaconda's distribution and are subject to those.
- For existing environments run:If any of the packages come from https://repo.anaconda.com/pkgs then the environment is using Anaconda's own channels.
conda list --explicit -n <environment_name>
- "defaults" is in the list of channels of the environment or in your ~/.condarc
How to migrate anaconda/miniconda environments
Packages from default conda channels and the community channel conda-forge are different and not compatible. Therefore a standard environment export will not work out of the box.
Generate a safe environment yaml file
- On ECMWF's Atos HPCF or ECS:
/usr/local/apps/conda/conda_export my_env > my_env.yml
- On any other platform: < add here link to a downloadable copy of conda_export >
- In order for it to work, these are the requirements:
- Python 3.6 or above
- Pyyaml python
- a working conda installation
- In order for it to work, these are the requirements:
Create a new containerised environment with Tykky on Atos HPCF or ECS
See HPC2020: Containerised software installations with Tykky
ml tykky conda-containerize new --mamba --prefix=$TYKKY_PATH/my_env my_env.yml tykky activate my_env
Create a new conda environment with Miniforge
ml conda mamba env create -f my_env.yml -n myenv conda activate my_env