vsc终端停止运行_在VSC中像本地一样连接远程进行Python开发

之前的文章我们介绍过微软的的开源战略,其中重要的一部分就是开源的IDE项目Visual Studio Code(VSC)。在PyCon 2019大会上,微软VSC团队和Python团队宣布发布VSC的Python远程开发组件,实现在VSC中远程连接docker容器、SSH连接服务,以及远程连接Windows WSL Linux子系统实现无缝Python开发。本文虫虫就给大家介绍一下这个远程开发插件。

概述

a9597fa183b3671716a19b236c4f01c9.png

通过远程开发组件使用远程Python解释器和扩展等基础开发环境,然后通过Visual Studio Code的UI提供界面进行开发,实现自动补全、调试、终端界面、源代码控制,扩展安装等功能,VSC的所有功能都可以使用,并无缝连接到远程计算机上的语言环境,实现和本地开发一样的体验。

安装

目前远程开发插件只支持在Visual Studio Code Insiders中可用,由VSC应用市场的三个扩展安装使用:

Remote-Containers:在本地docker容器内工作空间中开发;

8bba0c7473518940d88b5f9d83b2ce0e.png

Remote-SSH:通过SSH远程连接服务器上的工作空间中进行开发;

2f24a55fb12fcaee464cd3fb67384a02.png

Remote-WSL:通过Windows子系统LinuxWSL中运行的工作空间中开发。

b86cf6baa5d2046cfc8a60496ff6dce2.png

首先要下载安装Visual Studio Code Insiders,然后下载安装Remote Development扩展包。

b895bf36748232cc3186c595308d0175.png

Remote-Containers连接Docker工作区及Dev容器

Docker容器是时下建立可重现的开发测试环境的最便捷最流行的方式。通过docker方式,本地计算机不需要安装安装任何环境和依赖包,通过容器方式建立互不影响的运行环境,也能通过镜像包保存和共享所有环境,是解决依赖问题的神器,其他人通过镜像可以一键重现你的环境。

Remote-Containers扩展允许Visual Studio Code使用dev容器的概念建立一个开发环境,并无缝对接工作。。 dev容器由.devcontainer文件夹中的文件定义,该文件定义所有创建的Docker的所有参数,可以通过Dockerfile创建单个容器或用docker-compose.yml实现多容器环境。

要使用docker容器中开发,在VSC中按F1,输入Remote-Containers Remote-Containers命令,并浏览到docker定义的文件夹。如果当前工作空间根目录中找到.devcontainer文件夹,会使用dev容器定义创建dev容器。如果容器定义不存在,系统会提示为该工作空间创建新的开发容器。VSC内置了Python镜像,可以一键创立Python 2/3,Python3+Postgres,Miniconda和Anaconda的开发环境

6b74b9b8d75c67daecdd6677cc9fc508.png

如上图,选择一个开发容器,VSC将自动创建docker镜像,然后安装一个轻量级的远程服务器,然后就可以在dev容器总进行开发。远程服务器允许Visual Studio Code远程运行Python扩展,所有功能都可以像在本地环境中一样工作。

文件文件已安装到容器中,可以直接打开,进行编辑代码,并且实现IntelliSense和自动补全功能:

586dbe1a68c5c564a227313f9fc31e03.png

可以对代码进行调试、设置断点并逐步执行,就像是对本地文件调试一样

cdfbf144c984ffef0515d377caeb58cc.png

可以在Python Interactive窗口中运行执行并查看输入结果:

08d7a40984d95c26d7450fdfa45cf66c.png

也能cell执行,打印图形:

dc56b1ade9cc2871fb1478e4dafd2f18.png

打开在标签页terminal业,可以使用容器的命令行。

40ba69829638d79ea64dc4c444849993.png

使用Docker扩展并右键单击容器并选择Attach Visual Studio Code,可以将VSC添加到关联到任何正在运行的Docker容器,这样就不需要从新创建和使用dev容器了:

84bdc12523eb258866789541a4d0f72f.png

当然关联现有容器时,可能会缺少VSC某些依赖项,会导致关联出现问题,这是请参考官方的vscode-dev-containers repo中的实例的定义,添加必须的Dockerfile的依赖项就行。

如果要返回到正常的本地视图,可以运行Remote-Containers:Reopen Folder Locally命令。所有变更都会通过卷装驱动器保存到工作区,因此可以在本地视图中使用。

Remote-SSH链接到远程服务器

Python开发人员常用开发方式中就是开发环境位于远程服务器上,这时候就需要通过"Remote-SSH"扩展来实现SSH连接打开远程开发环境,并在VSC本地进行开发。

要使用Remote-SSH,要确保可以从Windows命令SSH到远程计算机,然后运行F1,输入Remote-SSH:New Window并输入希望定位的SSH主机。注意要实现该功能需要在路径中设置SSH客户端,同时Windows下的SSH客户端还不支持Putty客户端。

6e8d0037cc11d421a2dbc354432dd4ee.png

Visual Studio Code将重新打开,然后在SSH主机上安装远程服务器扩展。然后,可以在远程计算机上打开一个文件夹:

313e9bb67b8cc5f21c22e15c3771a3ec.png

然后就编辑和调试代码了。在该方法下源代码都不是本地的。所有编辑和调试功能都由远程服务器提供。

1b71e3af92a1dd1a72947db71a5a98e6.png

Remote-WSL连接WSL工作区

最后是"Remote-WSL"扩展,它允许VSC UI在Windows桌面上运行,而VSC的远程服务器在Windows Linux子系统内运行扩展。

要开始使用Remote WSL,请F1,运行Remote-WSL:New Window命令:

48beed093f6d10e0a5af09fc1472fdf2.png

该命令执行后,会自动安装VSC远程服务器,并为在WSL上下文中运行的VSC窗口。

或者可以通过键入"code-insiders"从wsl提示符直接在WSL中打开文件夹。

然后,可以像其他远程开发环境一样创建文件,编辑代码,调试,打开WSL终端等操作:

5ad7a877f4f2ac7446c8f66ed87b8468.png

总结

本文给大家介绍了在VSC中通过远程开发组件进行远程连接开发环境的方法,和其他方法相比较(比如Jupyter),该方法由于使用了VSC组件和扩展更加适合开发人员使用,实现最佳的开发体验,当然由于该组件还处于Priview阶段,仅供大家尝鲜使用,不建议在生产环境中使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值