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 07 Python
Python的词法分析与语法分析
May 18 Python
Python用sndhdr模块识别音频格式详解
Jan 11 Python
详解Python3.6的py文件打包生成exe
Jul 13 Python
PythonWeb项目Django部署在Ubuntu18.04腾讯云主机上
Apr 01 Python
python2.7实现复制大量文件及文件夹资料
Aug 31 Python
详解一种用django_cache实现分布式锁的方式
Sep 01 Python
3种python调用其他脚本的方法
Jan 06 Python
Python3和PyCharm安装与环境配置【图文教程】
Feb 14 Python
Python类及获取对象属性方法解析
Jun 15 Python
Python监听键盘和鼠标事件的示例代码
Nov 18 Python
宝塔更新Python及Flask项目的部署
Apr 11 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判断表单复选框选中状态完整例子
2014/06/24 PHP
两个php日期控制类实例
2014/12/09 PHP
Ajax+PHP实现的分类列表框功能示例
2019/02/11 PHP
图片动画横条广告带上下滚动可自定义图片、链接等等
2013/10/20 Javascript
JS实现在页面随时自定义背景颜色的方法
2015/02/27 Javascript
深入JavaScript高级程序设计之对象、数组(栈方法,队列方法,重排序方法,迭代方法)
2015/12/01 Javascript
JavaScript实现复制文章自动添加版权
2016/08/02 Javascript
jQuey将序列化对象在前台显示地实现代码(方法总结)
2016/12/13 Javascript
基于jPlayer三分屏的制作方法
2016/12/21 Javascript
JavaScript实现经典排序算法之选择排序
2016/12/28 Javascript
JSON与js对象序列化实例详解
2017/03/16 Javascript
原生javascript上传图片带进度条【实例分享】
2017/04/06 Javascript
基于jQuery实现文字打印动态效果
2017/04/21 jQuery
javascript 封装Date日期类实例详解
2017/05/28 Javascript
移动端滑动切换组件封装 vue-swiper-router实例详解
2018/11/25 Javascript
node+vue实现文件上传功能
2020/05/28 Javascript
JS数据类型判断的几种常用方法
2020/07/07 Javascript
js实现简单的随机点名器
2020/09/17 Javascript
python中lambda与def用法对比实例分析
2015/04/30 Python
Python面向对象编程之继承与多态详解
2018/01/16 Python
Java编程迭代地删除文件夹及其下的所有文件实例
2018/02/10 Python
Python实现动态添加属性和方法操作示例
2018/07/25 Python
jupyter 导入csv文件方式
2020/04/21 Python
Python random模块的使用示例
2020/10/10 Python
10种CSS3实现的loading动画,挑一个走吧?
2020/11/16 HTML / CSS
HTML5实现简单图片上传所遇到的问题及解决办法
2016/01/20 HTML / CSS
理肤泉美国官网:La Roche-Posay
2018/01/17 全球购物
德国在线订购鲜花:Fleurop
2018/08/25 全球购物
操行评语大全
2014/04/30 职场文书
2015年售后服务工作总结
2015/04/25 职场文书
2015年共青团工作总结
2015/05/15 职场文书
2015年清剿火患专项行动工作总结
2015/07/27 职场文书
初中思想品德教学反思
2016/02/24 职场文书
详细谈谈MYSQL中的COLLATE是什么
2021/06/11 MySQL
关于React Native 无法链接模拟器的问题
2021/06/21 Javascript
Nginx 配置 HTTPS的详细过程
2022/05/30 Servers