Pycharm学习教程(7)虚拟机VM的配置教程


Posted in Python onMay 04, 2017

设想这样一种情况,你在一个平台上操作你的工程,但你希望在另外一个平台上完善并运行它,这就是为什么Pycharm做了很多工作来支持远程调试。

在虚拟机上运行一个工程主要包含以下步骤:

(1)定义一个虚拟框架define a virtual box

(2)需要在虚拟框架下配置一个远程的解释器configure a remote interpreter

(3)在远程控制台加载当前工程launch your script in the remote console

1、准备工作

确定你的Pycharm已经拥有以下环境:

(1)安装了Oracle's Virtual Box

(2)安装了Vagrant

(3)将一下这些可执行文件添加到环境变量中

Vagrant安装文件下的vagrant.bat文件,这部分工作应该由安装程序自动完成

Oracle's VirtualBox安装文件下的VBoxManage.exe文件。

确保Pycharm的Vagrant插件可用:单击主工具栏中的设置按钮,在设置对话框中打开 Plugins页面,显示插件默认可用:

Pycharm学习教程(7)虚拟机VM的配置教程

至此准备工作完成,正式开始。

2、创建一个虚拟的virtual box

在设置对话框中(单击主工具栏的设置按钮),单击 Vagrant界面,然后输入可执行文件路径以及实例路径。

如果框架已经预先定义好,以上选项就会出现在一个下拉列表中,从中选择一个即可:

Pycharm学习教程(7)虚拟机VM的配置教程

如果当前没有合适的virtual box,则可通过单击绿色的加号来添加一个,输入框架名称和下载地址:

Pycharm学习教程(7)虚拟机VM的配置教程

单击OK,Pycharm开始自动下载VM模板:

Pycharm学习教程(7)虚拟机VM的配置教程

至此你已经新建了一个virtual box并已经将其添加到了当前环境中。

注意Tool 菜单下的Vagrant 命令,这个命令与标准的Vagrant行为相关联。

一旦创建了Vagrant box,就需要在工程存根下对其进行初始化。在主菜单上单击Tools | Vagrant,选择 Init in Project Root:

Pycharm学习教程(7)虚拟机VM的配置教程

选择你准备初始化的Vagrant box:

Pycharm学习教程(7)虚拟机VM的配置教程

此时会创建对应的Vagrantfile文件,可以根据要求对其进行更改:

Pycharm学习教程(7)虚拟机VM的配置教程

初始化完成后,执行vagrant up命令(在Vagrant 菜单中选择Up 命令):

Pycharm学习教程(7)虚拟机VM的配置教程

Pycharm会自动运行vagrant up 命令,并在控制台界面显示输出结果:

Pycharm学习教程(7)虚拟机VM的配置教程

3、在虚拟机上配置远程解释器

再次打开设置对话框(单击主工具栏上的设置按钮),选择Project Interpreter页面,在这里你可以从下拉列表中选择一个对应的解释器,但是如果当前没有可用的解释器,我们就需要单击Configure Interpreters来自定义一个:

Pycharm学习教程(7)虚拟机VM的配置教程

此时会打开Python Interpreters界面,单击绿色的加号来选择一个远程的解释器:

Pycharm学习教程(7)虚拟机VM的配置教程

Configure Remote Python Interpreter 对话框中,需要进行服务器配置。这些设置可以手动设定,也可以从已经定义好的Vagrant配置文件中导入,在这里我们选择第二个方式。 单击 Fill from Vagrant configuration按钮,将会根据配置文件的内容自动填充相关设置属性值:

Pycharm学习教程(7)虚拟机VM的配置教程

为了确认是否配置成功,单击Test connection... 按钮:

Pycharm学习教程(7)虚拟机VM的配置教程

将其设置为默认解释器:

Pycharm学习教程(7)虚拟机VM的配置教程

从现在开始我们就可以在VM虚拟机上运行所有的脚本工程了:

Pycharm学习教程(7)虚拟机VM的配置教程

接下来我们通过SSH来登录virtual box。

4、链接SSH终端机

为什么需要登录呢?因为Pycharm要求你这么做。

在主菜单中选择Tools | Run SSH Terminal,如果你定义了不止一个主机(host),则选择一个你想要建立链接的(我们这里选择远程解释器):

Pycharm学习教程(7)虚拟机VM的配置教程

观察Run tool window窗口的控制台运行信息:

Pycharm学习教程(7)虚拟机VM的配置教程

现在你已经能够和virtual box进行直接交互了,首先我们先确认你的工程目录是否进行了完整映射。只需观察vagrant's默认的共享文件夹信息:

Pycharm学习教程(7)虚拟机VM的配置教程

接下来运行一个可用的脚本文件,例如Solver.py:

Pycharm学习教程(7)虚拟机VM的配置教程

大功告成。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python with用法实例
Apr 14 Python
Python实现批量读取word中表格信息的方法
Jul 30 Python
使用python加密自己的密码
Aug 04 Python
Python实现获取磁盘剩余空间的2种方法
Jun 07 Python
基于python时间处理方法(详解)
Aug 14 Python
Python+Socket实现基于UDP协议的局域网广播功能示例
Aug 31 Python
python使用threading获取线程函数返回值的实现方法
Nov 15 Python
对python遍历文件夹中的所有jpg文件的实例详解
Dec 08 Python
Python 实现中值滤波、均值滤波的方法
Jan 09 Python
如何用Python绘制3D柱形图
Sep 16 Python
pytorch 如何使用batch训练lstm网络
May 28 Python
在pycharm中无法import所安装的库解决方案
May 31 Python
python 统计代码行数简单实例
May 04 #Python
利用PyInstaller将python程序.py转为.exe的方法详解
May 03 #Python
Pycharm学习教程(6) Pycharm作为Vim编辑器使用
May 03 #Python
利用numpy+matplotlib绘图的基本操作教程
May 03 #Python
利用matplotlib+numpy绘制多种绘图的方法实例
May 03 #Python
Pycharm学习教程(5) Python快捷键相关设置
May 03 #Python
python中解析json格式文件的方法示例
May 03 #Python
You might like
php 注释规范
2012/03/29 PHP
解析PHP中数组元素升序、降序以及重新排序的函数
2013/06/20 PHP
Yii使用CLinkPager分页实例详解
2014/07/23 PHP
分享ThinkPHP3.2中关联查询解决思路
2015/09/20 PHP
完美解决phpdoc导出文档中@package的warning及Error的错误
2016/05/17 PHP
PHP根据key删除数组中指定的元素
2019/02/28 PHP
PHP递归统计系统中代码行数
2019/09/19 PHP
PHP的new static和new self的区别与使用
2019/11/27 PHP
js自带函数备忘 数组
2006/12/29 Javascript
JSCode all of Brower 全局屏蔽网页右键功能 具体实现
2013/06/05 Javascript
css+js实现部分区域高亮可编辑遮罩层
2014/03/04 Javascript
全面详细的jQuery常见开发技巧手册
2016/02/21 Javascript
vue上传图片到oss的方法示例(图片带有删除功能)
2018/09/27 Javascript
js根据需要计算数组中重复出现某个元素的个数
2019/01/18 Javascript
js实现圆形菜单选择器
2020/12/03 Javascript
Tensorflow分类器项目自定义数据读入的实现
2019/02/05 Python
django框架防止XSS注入的方法分析
2019/06/21 Python
python字符串替换re.sub()方法解析
2019/09/18 Python
3行Python代码实现图像照片抠图和换底色的方法
2019/10/10 Python
使用python切片实现二维数组复制示例
2019/11/26 Python
Django多数据库配置及逆向生成model教程
2020/03/28 Python
如何通过命令行进入python
2020/07/06 Python
Python3+RIDE+RobotFramework自动化测试框架搭建过程详解
2020/09/23 Python
Python尾递归优化实现代码及原理详解
2020/10/09 Python
纯CSS3打造动感漂亮时尚的扇形菜单
2014/03/18 HTML / CSS
canvas简易绘图的实现(海绵宝宝篇)
2018/07/04 HTML / CSS
以色列的身体护理及家居香薰品牌:Sabon NYC
2018/02/23 全球购物
触发器(trigger)的功能都有哪些?写出一个触发器的例子
2012/09/17 面试题
学校门卫岗位职责
2014/03/16 职场文书
教师党员批评与自我批评
2014/10/15 职场文书
2014年反腐倡廉工作总结
2014/12/05 职场文书
财务会计岗位职责
2015/02/03 职场文书
2015年国际护士节演讲稿
2015/03/18 职场文书
2015政治思想表现评语
2015/03/25 职场文书
辞职报告(范文三篇)
2019/08/27 职场文书
NodeJs内存占用过高的排查实战记录
2021/05/10 NodeJs