阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

使用Vagrant搭建跨平台的Python开发环境

224次阅读
没有评论

共计 3157 个字符,预计需要花费 8 分钟才能阅读完成。

最近升级了 Win10 之后感觉系统萌萌哒,不过也可惜了自己之前花费很大力气搭建的开发环境。由于最近跨平台的需求比较大,就考虑搭建一套跨平台的开发环境。

Vagrant

Vagrant 是一个相对轻量级的虚拟机管理软件,根据官方的说明:

(Vagrant) Create and configure lightweight, reproducible, and portable development environments.

所以选择了 Vagrant 来管理开发环境。Vagrant 的下载和安装非常的容易,在它的官方网站 https://www.vagrantup.com/downloads.html 中下载需要的版本即可。

Virtual Box

Vagrant 本身并不包含虚拟机管理软件,因此我们需要配合 Vagrant 安装一个虚拟机软件。Vagrant 支持 VMware, Virtual Box, Hyper-V 等多种虚拟机软件,我选择的是 Virtual Box。免费,跨平台。

Virtual Box 的安装也非常的容易,官方网站下载即可,在此就不再赘述了。

Tips: 为什么有了虚拟机软件还需要使用 Vagrant?

因为简单的虚拟机并不能满足我们的需要,我们希望一个新的环境,开机就帮我们解决了一切。使用 Vagrant 可以方便的帮助我们在搭建系统之后,自动的管理端口映射 / 软件包安装等等问题。

同时,更重要的,Vagrant 还可以方便的设定同步文件夹,让我们在宿主机内对程序的修改,可以方便的同步到客户机,在调试程序时,这是一个非常优秀的特质。

选择客户机系统

Vagrant 的客户机可以支持多种系统,具体支持那些,可以前往 https://atlas.hashicorp.com/boxes/search 查看,我选择的是 Ubuntu 14.04 x64 的版本,也就是 https://atlas.hashicorp.com/ubuntu/boxes/trusty64 这个版本。

如果你没有其他的需求,仅仅是需要一个干净的 ubuntu, 选择好之后在一个文件夹里执行 vagrant init ubuntu/trusty64 即可初始化一个 Ubuntu 14.04 x64 的虚拟机。

使用 Vagrant 搭建跨平台的 Python 开发环境

此时文件夹中会出现一个 Vagrantfile 的文件,就是这个客户机的配置文件了。

修改配置文件

修改配置文件主要有两个目的,一是配置端口映射,使我们可以从宿主机的端口去访问客户机,另一个目的是使得客户机在系统加载完成时执行一个 Shell 脚本来安装所需要的程序文件。

Vagrant 会默认初始化一个端口映射为 guest:22, host:2222 也就是说客户机的 22 端口,将被映射到宿主机的 2222 端口。

修改端口映射

我们在 Vagrantfile 文件内找到

# config.vm.network "forwarded_port", guest: 80, host: 8080

这一行,去掉 #号,并按照我们的需要来修改端口号,我的设置如下:

config.vm.network "forwarded_port", guest: 5000, host: 15000  

这样就设置了客户机的 5000 端口转发到宿主机的 15000 端口,或者说宿主机的 15000 端口将转发到客户机的 5000 端口。

加载配置脚本

Vagrant 可以设置一个配置脚本,以方便我们来设定配置:找到

  # config.vm.provision "shell", inline: <<-SHELL
  #   sudo apt-get update
  #   sudo apt-get install -y apache2
  # SHELL

这几行,将其修改为

  config.vm.provision "shell", path: "Python_env.sh"

表明首次启动后,将找到 python_env.sh 并执行。我们就可以通过设定这个脚本来完成配置不同的环境,我的配置如下:

echo "---------------------Upgrading System......---------"  
sudo rm -R /var/lib/apt/lists/*  
sudo apt-get update -y  
sudo apt-get upgrade -y  
sudo apt-get build-dep python  
echo "---------------------Upgrading System......---------"  
wget -c https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz  
tar -xzvf Python-2.7.9.tgz  
cd Python-2.7.9/  
LDFLAGS="-L/usr/lib/x86_64-linux-gnu" ./configure  
make  
sudo make install  
echo "---------------------Checking Installation-----------"  
python --version  
echo "---------------------Setting pip---------------------"  
sudo apt-get install build-essential  
sudo apt-get install python-dev  
sudo apt-get install python-pip -y  
echo "---------------------Upgrading pip-------------------"  
sudo pip install --upgrade pip

此时的目录如下:

使用 Vagrant 搭建跨平台的 Python 开发环境

启动

这一切做好之后,我们就可以启动客户机了。在目录下执行 vagrant up

使用 Vagrant 搭建跨平台的 Python 开发环境

配置环境中,可以看到已经在执行 Shell 脚本,更新系统了。这个时候只需要默默等待就好 … 使用 Vagrant 搭建跨平台的 Python 开发环境

开始使用

Vagrant 在启动之后会为我们创建一个 Private Key 以供登陆,你可以直接在 Windows 的命令行下输入 vagrant ssh 来进行 SSH 的操作,也可以像我一样,使用其他的客户端。我使用 MobaXterm 作为 Windows 下的 SSH Client。

使用 Vagrant 搭建跨平台的 Python 开发环境

输入之后,即可进入到开发环境中。

同步文件夹

不妨在终端中输入 cd /vagrantls,你看到了什么?

使用 Vagrant 搭建跨平台的 Python 开发环境

没错,我们之前在 Windows 中创建的 python_env.sh 和 Vagrantfile 赫然出现在了客户机中。这就是同步文件夹了。该文件夹和 Windows 中的对应文件夹同步。

这样,我们就可以轻松的在虚拟机中进行操作了。

如何使用 vagrant 在虚拟机安装 Hadoop 集群 http://www.linuxidc.com/Linux/2013-04/82750.htm

Vagrant 中高效的 Puppet 模块管理 http://www.linuxidc.com/Linux/2014-05/101873.htm

使用 Vagrant 和 Fabric 用于集成测试 http://www.linuxidc.com/Linux/2014-07/104113.htm

使用 Vagrant 搭建开发环境 http://www.linuxidc.com/Linux/2014-07/104116.htm

Windows 下配置 Vagrant 环境 http://www.linuxidc.com/Linux/2014-07/104115.htm

使用 Vagrant 搭建开发环境 http://www.linuxidc.com/Linux/2014-07/104116.htm

通过 Vagrant 搭建虚拟机环境 http://www.linuxidc.com/Linux/2015-08/121985.htm

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-09/123054.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计3157字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中