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重试装饰器示例
Feb 11 Python
Django集成百度富文本编辑器uEditor攻略
Jul 04 Python
python爬虫入门教程之点点美女图片爬虫代码分享
Sep 02 Python
python自定义类并使用的方法
May 07 Python
深入理解python中的select模块
Apr 23 Python
用 Python 爬了爬自己的微信朋友(实例讲解)
Aug 25 Python
基于python3 类的属性、方法、封装、继承实例讲解
Sep 19 Python
python中使用正则表达式的连接符示例代码
Oct 10 Python
Python给定一个句子倒序输出单词以及字母的方法
Dec 20 Python
pandas DataFrame 删除重复的行的实现方法
Jan 29 Python
python实现抽奖小程序
Apr 15 Python
Python项目打包成二进制的方法
Dec 30 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
海河写的 Discuz论坛帖子调用js的php代码
2007/08/23 PHP
php为字符串前后添加指定数量字符的方法
2015/05/04 PHP
php禁用函数设置及查看方法详解
2016/07/25 PHP
Add a Formatted Table to a Word Document
2007/06/15 Javascript
js 验证密码强弱的小例子
2013/03/21 Javascript
nodejs的10个性能优化技巧
2014/07/15 NodeJs
浅析JavaScript中的事件机制
2015/06/04 Javascript
在JavaScript中处理数组之reverse()方法的使用
2015/06/09 Javascript
Js+Ajax,Get和Post在使用上的区别小结
2016/06/08 Javascript
AngularJS 入门教程之HTML DOM实例详解
2016/07/28 Javascript
AngularJS基础 ng-disabled 指令详解及简单示例
2016/08/01 Javascript
vue中axios处理http发送请求的示例(Post和get)
2017/10/13 Javascript
基于angular-utils-ui-breadcrumbs使用心得(分享)
2017/11/03 Javascript
微信小程序实现图片压缩功能
2018/01/26 Javascript
微信小程序仿知乎实现评论留言功能
2018/11/28 Javascript
Vue注册组件命名时不能用大写的原因浅析
2019/04/25 Javascript
我要点爆”微信小程序云开发之项目建立与我的页面功能实现
2019/05/26 Javascript
了解javascript中变量及函数的提升
2019/05/27 Javascript
JavaScript中数组去重的5种方法
2020/07/04 Javascript
基于element-ui封装表单金额输入框的方法示例
2021/01/06 Javascript
[57:28]2018DOTA2亚洲邀请赛 4.6 淘汰赛 TNC vs Liquid 第一场
2018/04/10 DOTA
Python 检查数组元素是否存在类似PHP isset()方法
2014/10/14 Python
python 修改本地网络配置的方法
2019/08/14 Python
利用python实现AR教程
2019/11/20 Python
numpy实现神经网络反向传播算法的步骤
2019/12/24 Python
python 实现list或string按指定分段
2019/12/25 Python
使用Python爬虫库requests发送请求、传递URL参数、定制headers
2020/01/25 Python
利用html5 canvas动态画饼状图的示例代码
2018/04/02 HTML / CSS
是否有自动比较结构的方法
2015/06/03 面试题
优秀团员个人的自我评价
2013/10/02 职场文书
电子专业毕业生自荐信
2014/05/25 职场文书
2015学习委员工作总结范文
2015/04/03 职场文书
2015社区精神文明建设工作总结
2015/04/21 职场文书
python实现大文本文件分割成多个小文件
2021/04/20 Python
一篇文章弄懂Python关键字、标识符和变量
2021/07/15 Python
Windows Server 2019 配置远程控制以及管理方法
2022/04/28 Servers