在运行Ubuntu 16.04的Vagrant虚拟机中,我使用以下方法创建了一个Python 3虚拟环境:
python3 -m venv /home/vagrant/venv
当我vagrant ssh
时,我可以使用以下任一方式激活它:
source /home/vagrant/venv/bin/activate
或
. /home/vagrant/venv/bin/activate
在配置期间,我创建了文件/etc/profile.d/login-bash.sh
:
cd /vagrant
. /home/vagrant/venv/bin/activate
当我ssh
进入时,该文件正在运行,因为我是从/vagrant
共享目录开始的,但第二行似乎没有做任何事情。
答案 0 :(得分:2)
问题解决了。每个ssh登录都会运行~/.profile
:
config.vm.provision "shell", inline: 'echo ". /home/vagrant/venv/bin/activate" > ~/.profile', privileged: false