Ubuntu 如何设置PyCharm以在Vagrant/VirtualBox远程解释器配置中使用virtualenv?

Ubuntu 如何设置PyCharm以在Vagrant/VirtualBox远程解释器配置中使用virtualenv?,ubuntu,vagrant,virtualbox,virtualhost,pycharm,Ubuntu,Vagrant,Virtualbox,Virtualhost,Pycharm,在Windows下运行的PyCharm Ubuntu14.04 LTS虚拟机托管在VirtualBox下 将PyCharm设置为使用Vagrant启动所述VM并使用远程Python解释器,效果与广告中所宣传的一样。然而,Ubuntu使用的解释器和软件包也是如此 如何修改此设置以在VM上使用一个或多个VirtualNV?其想法是,每个项目都可能有完全不同的需求,它们应该通过virtualenv相互隔离,并与系统隔离 这是否需要使用Apache VirtualHost来设置单独的项目?有没有关于为P

在Windows下运行的PyCharm

Ubuntu14.04 LTS虚拟机托管在VirtualBox下

将PyCharm设置为使用Vagrant启动所述VM并使用远程Python解释器,效果与广告中所宣传的一样。然而,Ubuntu使用的解释器和软件包也是如此

如何修改此设置以在VM上使用一个或多个VirtualNV?其想法是,每个项目都可能有完全不同的需求,它们应该通过virtualenv相互隔离,并与系统隔离


这是否需要使用Apache VirtualHost来设置单独的项目?有没有关于为Python和/或Python/Django项目这样做的文档?

我们使用的是vagrant,我们有100多个具有不同虚拟环境的站点。我在/vagrant/projects文件夹中设置项目,该文件夹是主机和来宾之间的共享文件夹。通过这种方式,我们可以根据开发人员的偏好,从vagrant来宾机或主机内的ide中处理项目

每个项目都有自己的apachevirtualhost conf,虚拟环境位于/usr/local/virtualenvs/中。例如:

/vagrant/projects/site1和虚拟环境/usr/local/virtualenvs/site1等等

一个站点的apache配置如下所示:

<VirtualHost *:80>
   ServerAdmin your@email.com
   ServerName site1

   ErrorLog /var/log/apache2/error_site1.log
   CustomLog /var/log/apache2/access_site1.log common

   WSGIDaemonProcess site1 user=www-data group=www-data umask=0002 threads=3 python-path=/vagrant/projects/site1/web/site1:/usr/local/virtualenvs/site1/lib/python2.7/site-packages/
   WSGIProcessGroup site1
   WSGIScriptAlias / /vagrant/projects/site1/web/server.wsgi
   <Directory />
       Options Indexes FollowSymLinks none ExecCGI
       AllowOverride None
       Order allow,deny
       Allow from all
       ServerSignature Off
   </Directory>
</VirtualHost>

服务器管理员your@email.com
服务器名站点1
ErrorLog/var/log/apache2/error\u site1.log
CustomLog/var/log/apache2/access\u site1.log公共
WSGIDaemonProcess site1 user=www-data-group=www-data-umask=0002-threads=3 python-path=/vagrant/projects/site1/web/site1:/usr/local/virtualenvs/site1/lib/python2.7/site-packages/
WSGIProcessGroup站点1
WSGIScriptAlias//vagrant/projects/site1/web/server.wsgi
选项索引跟随SYMLINKS none ExecCGI
不允许超限
命令允许,拒绝
通融
服务器签名关闭

您还可以使用vagrant hostmanager插件使用主机和来宾计算机自动编辑主机文件。因此,您可以直接访问域,而无需一直手动编辑主机文件

我发现被接受的答案很有帮助,但与@miR的评论一致

要将PyCharm设置为使用虚拟环境,可以编辑/设置Python解释器路径到VirtualEnvironment的二进制文件。 例如,我的virtualenv(通过ssh在Ubuntu Vagrant VM中创建)是
/home/Vagrant/virtualenvs/project/bin/python3
,所以我只是将该路径复制到“项目解释器”中的“Python解释器路径”字段中


这很有效。我甚至可以使用PyCharm接口将软件包安装到Vagrant VM上的virtualenv中。

除非我错了,这说明了该做什么,但没有说明如何做?根据这个问题,我正在寻找关于如何让PyCharm在Vagrant中使用virtualenv的说明……你可以与客人共享虚拟主机文件夹,然后从那里开始?我的答案主要是关于课文中最后的问题,可能不是标题中的问题。好提示!我在虚拟环境中运行一个Django应用程序,我需要使用PyCharm的Django runners的另一个步骤是取消选择“将内容根添加到PYTHONPATH”和“将源根添加到PYTHONPATH”,然后将删除工作目录路径放入“工作目录。也许不是最好的组合,但它现在起作用了。