Goal: Introduce how conda environments can be reproduced and shared.
Based on Managing Environments.
Table of Contents | ||
---|---|---|
|
...
Note |
---|
In the following examples, we assume you already have a |
...
Clone an Environment
Info |
---|
Existing Conda environments can be cloned (essentially copied). |
Code Block |
---|
[]$ conda create --help
...
options:
...
--clone ENV Create a new environment as a copy of an existing local environment.
... |
Example
Code Block |
---|
[]$ conda create -p py_env2 --clone py_env
Retrieving notices: ...working... done
Source: /home/<username>/.conda/envs/py_env
Destination: /cluster/medbow/project/<project-name>/<username>/software/py_env2
Packages: 39
Files: 1
...
#
# To activate this environment, use
# $ conda activate /cluster/medbow/project/<project-name>/<username>/software/py_env2 |
Info |
---|
Notice: The source (environment being cloned) and the destination (new cloned environment) are listed. In the above, we are using the |
Expand | ||
---|---|---|
| ||
|
...
Using Cloned Environment
Note |
---|
Notice how you need to activate/use this cloned environment: |
Code Block |
---|
[]$ cat ~/.conda/environments.txt
/home/<username>/.conda/envs/py_env
/project/<project-name>/<username>/conda/envs/r_env
/cluster/medbow/project/<project-name>/<username>/software/slim_env_4.2.2
/cluster/medbow/project/<project-name>/<username>/software/py_env2
[]$ conda info --env
# conda environments:
#
base /apps/u/opt/linux/miniconda3/24.3.0
/cluster/medbow/project/<project-name>/<username>/software/py_env2
/cluster/medbow/project/<project-name>/<username>/software/slim_env_4.2.2
py_env /home/<username>/.conda/envs/py_env
r_env /project/<project-name>/<username>/conda/envs/r_env |
Info |
---|
Need to define the full path to activate. |
Code Block |
---|
[]$ conda activate /cluster/medbow/project/<project-name>/<username>/software/py_env2
(/cluster/medbow/project/<project-name>/<username>/software/py_env2) []$ |
...
Conda env command
Info |
---|
The |
Code Block |
---|
[]$ conda env --help
usage: conda env [-h] command ...
positional arguments:
command
config Configure a conda environment.
create Create an environment based on an environment definition file.
export Export a given environment
list List the Conda environments.
remove Remove an environment.
update Update the current environment based on environment file.
options:
-h, --help Show this help message and exit. |
...
Export an Environment
Info |
---|
Within an active environment we can export into a readable file a description of the entire Conda environment. This describes all the system related libraries as well as anything that that was explicitly |
Code Block |
---|
[]$ conda activate r_env
(r_env) []$ conda env export > r_env.yml
(r_env) []$ conda deactivate
[]$ cat r_env.yml
name: r_env
channels:
- conda-forge
- defaults
dependencies:
- _libgcc_mutex=0.1=main
...
- zstd=1.5.5=hc292b87_2
prefix: /project/<project-name>/<username>/conda/envs/r_env |
...
Import an Environment
Info |
---|
Using the |
Code Block |
---|
[]$ cd /project/<project-name>/<username>/software/
[]$ conda env create -p r_env2 --file r_env.yml
...
#
# To activate this environment, use
#
# $ conda activate /cluster/medbow/project/<project-name>/<username>/software/r_env2
... |
...
Prev |
Workshop Home | Next |