Reputation: 4487
Suppose I have a python interpreter with many modules installed on my local system, and it has been tuned to just work.
Now I want to create a virtualenv to freeze these, so that they won't be broke by upgrading in the future.
How can I make it? Thanks.
I can't use pip freeze
, because that's a cluster on which there's no pip
and I don't have the privileges to install it. And I don't want the reinstall the modules either, I'm looking for that whether there's a cloning way.
Upvotes: 10
Views: 8280
Reputation: 25592
Run pip freeze
to create a list of all modules currently installed on the system. Then make a virtualenv, activate that environment, and install these modules.
pip freeze > env_modules.txt
virtualenv my_env
source my_env/bin/activate
pip install -r env_modules.txt
Upvotes: 9
Reputation: 21
Virtualenv does not work because it uses local python interpreter.
My solution is to use conda (anoconda or miniconda) to build the environment, so if you need some packages, you can just conda install them. Then copy it to the remote machine and run.
Upvotes: 0
Reputation: 39
I think the best is to use cpvirtualenv like this:
cpvirtualenv <name_of_virtualenv_to_be_copied> <name_of_new_virtualenv>
Upvotes: -3