2.6 【开发环境 01】使用Vagrant 搭建一劳永逸开发环境¶

在开发过程中难免遇到开发半小时,环境整半天的尴尬。
有时候自己辛苦在自己电脑上搭建的环境,却只能自己使用,无法复用给同事,这就造成了团队劳动力的极度浪费。
在这里,明哥会给你介绍一种方法,可以让你辛辛苦苦在自己电脑上搭建的 Python 项目运行环境,打包给你的同事们,让他们享受你的劳动成果。
1. 下载安装 Vagrant¶
vagrant 下载地址:https://www.vagrantup.com/downloads
安装完成后,执行 vagrant box add hashicorp/precise64
命令,就会在你的电脑上下载一个镜像,这个镜像仅仅是做演示用,你如果有需要,可以用自己定制过的对应系统的镜像。
在下载的时候,会提示你选择虚拟化软件,在这里我们选择 virtualbox (注意:请提前安装 virtualbox),既免费又轻量。

2. 初始化项目¶
进入我新建的项目目录 ~/Code/Python/Vagrant-Project
,执行
vagrant init hashicorp/precise64
初始化。
最后,直接用这条命令 vagrant up
启动虚拟机

虚拟机启动之后,就可以使用 vagrant ssh
直接 ssh
进入虚拟机(明哥注:Windows 只能使用远程登陆软件登陆
127.0.0.1:2222,比如 Xshell,或者使用 Tools -> Start SSH Session)。
在这个镜像中,内置了 Python 2.7.3 ,由于只做演示使用,所以这也够用了。
虚拟机里的 /vagrant/
目录就对应你宿主机上的 项目根目录

如果你想添加更多的文件夹映射,可以编辑 Vagrantfile 文件,在 end 前,添加下面这一行
config.vm.synced_folder "/Users/MING/src", "/srv/website"
然后再执行 vagrant reload
3. 配置 PyCharm¶
PyCharm 不愧是最专业的 Python IDE ,它对 Vagrant 也提供了非常好的支持。不过在使用前,需要配置一下。
首先,确保你的 vagrant 插件已经安装

然后,在 Tools -> Vagrant 中配置 vagrant 的信息

最后,再在 Project -> Python Interpreter 里添加 Vagrant 虚拟机里的 Python 解释器

配置完了后,无论在 Setting 里面

还是在项目界面里看到的 Python 解释器都是 Vagrant 里的 Python

在这样的一个环境下,你新建的所有 Python 项目文件,都会被同步到 Vagrant
虚拟机中的 /vagrant/
目录下,你在本地运行 Python 项目,其实都是在
Vagrant 虚拟机中运行。
如果你的 Python 项目运行需要依赖很多的组件
,那完全可以将这些组件全部安装在这个 Vagrant
虚拟机中,打包成镜像,然后把这个镜像和项目(包括 .vagrant
文件夹 和
Vagrantfile
)发给你的同事,他们就能很快的也拥有一套可以稳定运行的项目运行环境。