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编程中的命名空间与作用域
Oct 16 Python
Python中内置数据类型list,tuple,dict,set的区别和用法
Dec 14 Python
Python 字典与字符串的互转实例
Jan 13 Python
Python3读取Excel数据存入MySQL的方法
May 04 Python
python3中os.path模块下常用的用法总结【推荐】
Sep 16 Python
centos6.8安装python3.7无法import _ssl的解决方法
Sep 17 Python
Python秒算24点实现及原理详解
Jul 29 Python
PyTorch中的Variable变量详解
Jan 07 Python
Tensorflow 多线程设置方式
Feb 06 Python
python读写文件write和flush的实现方式
Feb 21 Python
使用keras时input_shape的维度表示问题说明
Jun 29 Python
新手必备Python开发环境搭建教程
May 28 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
建立文件交换功能的脚本(一)
2006/10/09 PHP
兼容性比较好的PHP生成缩略图的代码
2011/01/12 PHP
php操作mysql数据库的基本类代码
2014/02/25 PHP
PDO防注入原理分析以及注意事项
2015/02/25 PHP
php微信公众号开发之答题连闯三关
2018/10/20 PHP
PHP实现通过文本文件统计页面访问量功能示例
2019/02/13 PHP
JavaScript高级程序设计(第3版)学习笔记7 js函数(上)
2012/10/11 Javascript
用函数模板,写一个简单高效的 JSON 查询器的方法介绍
2013/04/17 Javascript
jQuery function的正确书写方法
2013/08/02 Javascript
javascript获取鼠标位置部分的实例代码(兼容IE,FF)
2013/08/05 Javascript
js跳转页面方法实现汇总
2014/02/11 Javascript
javascript的解析执行顺序在各个浏览器中的不同
2014/03/17 Javascript
js实现iframe跨页面调用函数的方法
2014/12/13 Javascript
JS获取图片lowsrc属性的方法
2015/04/01 Javascript
js中日期的加减法
2015/05/06 Javascript
javascript 判断两个日期之差的示例代码
2015/09/05 Javascript
Bootstrap简单表单显示学习笔记
2016/11/15 Javascript
jQuery实现的监听导航滚动置顶状态功能示例
2018/07/23 jQuery
JavaScript设计模式之单例模式原理与用法实例分析
2018/07/26 Javascript
详解Webpack loader 之 file-loader
2018/11/07 Javascript
[05:00]第二届DOTA2亚洲邀请赛主赛事第三天比赛集锦.mp4
2017/04/04 DOTA
python实现每次处理一个字符的三种方法
2014/10/09 Python
Python 实现取矩阵的部分列,保存为一个新的矩阵方法
2018/11/14 Python
Python从函数参数类型引出元组实例分析
2019/05/28 Python
详解Python 定时框架 Apscheduler原理及安装过程
2019/06/14 Python
Flask-WTF表单的使用方法
2019/07/12 Python
PyTorch中 tensor.detach() 和 tensor.data 的区别详解
2020/01/06 Python
一文了解python 3 字符串格式化 F-string 用法
2020/03/04 Python
使用Python通过oBIX协议访问Niagara数据的示例
2020/12/04 Python
家乐福台湾线上购物网:Carrefour台湾
2020/09/15 全球购物
对象的序列化(serialization)类是面向流的,应如何将对象写入到随机存取文件中
2015/06/22 面试题
企业仓管员岗位职责
2014/06/15 职场文书
十八大标语口号
2014/10/09 职场文书
先进个人申报材料
2014/12/30 职场文书
2015小学教师德育工作总结
2015/05/12 职场文书
聊聊CSS粘性定位sticky案例解析
2022/06/01 HTML / CSS