I don’t work with python and conda myself so I don’t have an authoritative answer. I searched for “conda share environment between users” and found what looks like some good advice here on ‘stackoverflow’: How to share an Anaconda Python environment between multiple users?
The stackoverflow website generally has good advice. Here’s an excerpt from that link that seems to be sound:
I would shy away from sharing environments with other users, because if they don’t know what they are doing, they could add packages that could conflict with other packages and/or even delete packages that another user might need. The preferred approach is that after you have created an environment, you export it as a yml file:
conda env export > environment.yml
Then you send the users the yml file and have them build their own environment using the yml:
conda env create -f environment.yml
If you really want to use a shared environment where every user can access, then you have to use the
--prefix option in your create:
conda create -p C:/full/public/path/to/py35 python=3.5
And then instruct your users to add the public path (
C:/full/public/path/to) to their conda config file. Then, they should be able to see the environment when running
conda env list.
Here’s another one that looks useful:
The key here is adding the path to the folder containing the environment(s) to the user’s conda configuration file
.condarc. Like this:
envs_dirs: - C:\full\path\to\environments\folder
This makes all the environments (subfolders within) available to the user. It does not appear to be possible to make a specific, named environment available.
As has been pointed out, you can create an environment in a specific location using the
-p flag, and then add the parent directory to the configuration file, but this is not a requirement. This may be useful, however, to avoid permissions errors if sharing environments that exists in protected user areas.
On Windows 10, my user configuration file was in
C:\Users\<my-user-name>\, and I just added the above text to the end of it.
I hope this is helpful.