From: http://blog.csdn.net/u013088062/article/details/50170551

虚拟环境配置

配置远程解释器


  设想这样一种情况,你在一个平台上操作你的工程,但你希望在另外一个平台上完善并运行它,这就是为什么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    // <---- 可以用它来在单台物理机器编程管理多个虚拟机(vms)

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

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

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

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

  

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

  2、创建一个虚拟的virtual box

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

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

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

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

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

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

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

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

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

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

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

配置远程解释器

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

  再次打开设置对话框(单击主工具栏上的设置按钮),选择Project Interpreter页面,在这里你可以从下拉列表中选择一个对应的解释器,

  但是如果当前没有可用的解释器,我们就需要单击Configure Interpreters来自定义一个:

  

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

  

  在Configure Remote Python Interpreter 对话框中,需要进行服务器配置。这些设置可以手动设定,也可以从已经定义好的Vagrant配置文件中导入,在这里我们选择第二个方式。

  单击 Fill from Vagrant configuration按钮,将会根据配置文件的内容自动填充相关设置属性值:

  

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

  

  将其设置为默认解释器:

  

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

  

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

  4、链接SSH终端机

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

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

  

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

  

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

  

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

  

  大功告成。

[Python] Remote debugging by Pycharm的更多相关文章

  1. PyCharm 2017: Remote debugging using remote interpreter doesn't work

    I set up a remote interpreter and verified that I can run a script using the remote interpreter. Con ...

  2. 在chrome 总调试cordova出现Detached from the target. Remote debugging has been terminated with reason: Connection lost. Please re-attach to the new target

    在chrome 总调试cordova出现如下错误: "Detached from the target. Remote debugging has been terminated with ...

  3. 转:Remote debugging with Visual Studio 2010

    Original URL http://www.codeproject.com/Articles/146838/Remote-debugging-with-Visual-Studio-2010 you ...

  4. python笔记:#003#PyCharm 的初始设置

    PyCharm 的初始设置(知道) 目标 恢复 PyCharm 的初始设置 第一次启动 PyCharm 新建一个 Python 项目 设置 PyCharm 的字体显示 PyCharm 的升级以及其他 ...

  5. Remote Debugging (1)

    The client/server design of the Java debugger allows you to launch a Java program from computer on y ...

  6. odoo开发环境搭建(四):python开发工具IDE pycharm配置

    odoo开发环境搭建(四):python开发工具IDE pycharm配置

  7. JPDA and Set up Tomcat for Remote Debugging

    * About JPDA (http://docs.oracle.com/javase/7/docs/technotes/guides/jpda/architecture.html) JPDA: (J ...

  8. 安卓手机移动端Web开发调试之Chrome远程调试(Remote Debugging)

    一.让安卓打debug模式的apk包 二.将电脑中的chrome升级到最新版本,在chrome浏览器地址栏中输入chrome://inspect/#devices: 在智能手机还未普及时,移动设备的调 ...

  9. Python环境搭建和pycharm安装

    Python环境搭建和pycharm安装 本人安装环境为Windows10系统,下载的Python版本为3.4社区版本,可参考 1.下载Python3.4版本 官网:https://www.pytho ...

随机推荐

  1. 代码大全 MSIL语言程序设计

    .NET平台的编译器会将高级语言(C#,VB.NET,F#)编译成MSIL(微软中间语言)格式.熟悉MSIL语言,可以读懂一些加密程序混淆过的算法,这些算法几乎不能还原成高级语言,但是可以还原成MSI ...

  2. docker使用GPU

    1.物理机安装显卡驱动 2.安装nvidia-docker wget -P /tmp https://github.com/NVIDIA/nvidia-docker/releases/download ...

  3. ClamAV安装使用及API例子

    ClamAV是一款由Sourcefire组织开发的开源杀毒引擎,Sourcefire同时也是Snort入侵检测引擎的所有者.ClamAV提供了一种更为快速灵活的框架用以检测恶意代码和软件产品.可以作为 ...

  4. Asp.net WebApi + EF 单元测试架构 DbContext一站到底

    其实关于webapi和Ef service的单元测试我以前已经写过相关文章,大家可以参考: Asp.net WebAPI 单元测试 单元测试 mock EF 中DbContext 和DbSet Inc ...

  5. Android文本输入框(EditText)切换密码的显示与隐藏

    package cc.c; import android.app.Activity; import android.os.Bundle; import android.text.Selection; ...

  6. nodejs express 框架解密2-如何创建一个app

    本文是基于express 3.4.6 的 1.在我们的app.js 文件里面有这么几行 http.createServer(app).listen(app.get('port'), function( ...

  7. xcode 编译器在各个arch下面默认宏

    $ clang -dM -E -arch armv7 -x c /dev/null #define OBJC_NEW_PROPERTIES 1 #define __APCS_32__ 1 #defin ...

  8. C# Like参数化 小记

    strBuilder.Append(" and b.name like '%' + @name + '%'"); parameters.Add(new SqlParameter(& ...

  9. Hadoop-Drill深度剖析

    1.概述 在<Hadoop - 实时查询Drill>一文当中,笔者给大家介绍如何去处理实时查询这样的业务场景,也是简略的提了一下如何去实时查询HDFS,然起相关细节并未说明.今天给大家细说 ...

  10. android 开发 - 对图片进行虚化(毛玻璃效果,模糊)

    概述 IPAD,IPHONE上首页背景的模糊效果是不是很好看,那么在 Android中如何实现呢.我通过一种方式实现了这样的效果. 开源库名称:anroid-image-blur 一个android ...