VS Code之Python环境配置--Remote ssh以及本地环境

VS Code之Python环境配置

一、配置本地的python环境

1、安装Anaconda3

在Anaconda官网下载最新版的Anaconda3版本并安装,网址在这里。

直接安装Anaconda3有一个好处就是,Anaconda3中集成了VS Code,只需要在安装Anaconda3的时候勾选即可,需要注意的是,安装过程中必须选择导入环境变量,这样就免去了自己添加环境变量的步骤。

详细步骤可以参考:https://blog.csdn.net/ychgyyn/article/details/82119201

2、配置VS Code环境

安装Python插件

首先,打开VS Code,进入插件页面,下载并安装微软官方的Python插件,具体如下图所示。


选择Python解释器

然后,按F1 选择Python 查看解释器项,如图中红圈标记所示。


点击后会出现解释器的版本选项(下图所示),如果只安装了一个python的话就只会出现一个,如果什么都没有出现,那就是环境变量为设置好。


配置launch.json文件

依次点击VS Code界面左上角 调试 =》打开配置,进入launch.json配置界面,输入下列配置信息。注意:"pythonPath"需要设置为你自己的本地python环境路径

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python3",
            "type": "python",
            "request": "launch",
            "stopOnEntry": false,
            "pythonPath": "F:\\Anaconda3\\python.exe", //python3的安装路径
            "program": "${file}",
            "cwd": "${workspaceFolder}",
            "env": {},
            "envFile": "${workspaceFolder}/.env",
            // "debugOptions": [
            //     "RedirectOutput"
            // ]
        },
        {
            "name": "Python: Terminal (external)",
            "type": "python",
            "request": "launch",
            "stopOnEntry": false,
            "pythonPath": "F:\\Anaconda3\\python.exe",
            "program": "${file}",
            "cwd": "",
            "console": "externalTerminal",
            "env": {},
            "envFile": "${workspaceFolder}/.env",
            // "debugOptions": []
        },
        {
            "name": "Python: Django",
            "type": "python",
            "request": "launch",
            "stopOnEntry": true,
            "pythonPath": "F:\\Anaconda3\\python.exe",
            "program": "${workspaceFolder}/manage.py",
            "cwd": "${workspaceFolder}",
            "args": [
                "runserver",
                "--noreload",
                "--nothreading"
            ],
            "env": {},
            "envFile": "${workspaceFolder}/.env",
            // "debugOptions": [
            //     "RedirectOutput",
            //     "Django"
            //]
        },      
    ]
}

配置task.json文件

依次点击VS Code界面左上角 终端 =》配置任务界面,进入task.json配置界面,输入下列配置信息。注意:"pythonPath"需要设置为你自己的本地python环境路径

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "echo",
            "type": "shell",
            "command": "F:\\Anaconda3\\python.exe",
            "args": [
                "${file}"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

3、测试环境是否配置成功

创建一个python文件,输入测试代码,若出现图中红圈所显示的内容,则为配置成功,当然也可以使用万能的Hello World来进行测试。

按ctrl + shift + B即可运行文件

二、连接远程服务器进行开发调试

1、下载相关插件

安装下图所示的全部插件,选择安装Remote Development插件可以安装下面所示的全部插件

2、配置SSH密钥

step1:检查本地计算机上是否已有SSH密钥。公钥通常位于~/.ssh/id_rsa.pubmacOS / Linux和%USERPROFILE%.ssh\id_rsa.pubWindows上。

若没有,请在本地终端/命令提示符下运行以下命令以生成SSH密钥对:

ssh-keygen -t rsa -b 4096

没有ssh-keygen?安装支持的SSH客户端。

step2:将本地公钥(id_rsa.pub文件)的内容添加到SSH主机authorized_keys上的相应文件中。

在macOS / Linux上,在本地终端中运行以下命令,根据需要替换用户名和主机名。

ssh-copy-id your-user-name-on-host@host-fqdn-or-ip-goes-here

在Windows上,在本地命令提示符中运行以下命令,替换REMOTEHOST适当的值。

SET REMOTEHOST=your-user-name-on-host@host-fqdn-or-ip-goes-here

scp %USERPROFILE%\.ssh\id_rsa.pub %REMOTEHOST%:~/tmp.pub
ssh %REMOTEHOST% "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat ~/tmp.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && rm -f ~/tmp.pub"

3、使用专用密钥提高安全性

虽然在所有SSH主机上使用单个SSH密钥可以很方便,但如果有人可以访问您的私钥,他们也可以访问所有主机。您可以通过为开发主机创建单独的SSH密钥来防止这种情况。只需按以下步骤操作


step1:在另一个文件中生成单独的SSH密钥。

在macOS / Linux上,在本地终端中运行以下命令:

ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa-remote-ssh

在Windows上,在本地命令提示符中运行以下命令:

ssh-keygen -t rsa -b 4096 -f %USERPROFILE%\.ssh\id_rsa-remote-ssh

step2:在VS Code中,运行Remote-SSH:打开配置文件...在命令选项板(F1)中,选择SSH配置文件,然后添加(或修改)主机条目,如下所示:

Host name-of-ssh-host-here
    User your-user-name-on-host
    HostName host-fqdn-or-ip-goes-here
    IdentityFile ~/.ssh/id_rsa-remote-ssh

切入到VS Code界面,按F1,选择下图红圈所示内容,进入Remote-ssh配置文件路劲,这里选择第一个路径即可,根据实际情况将上面的内容填入配置文件中即可:


step3:将步骤1中生成的本地 id_rsa-remote-ssh.pub文件的内容添加到SSH主机authorized_keys上的相应文件中。

在macOS / Linux上,在本地终端中运行以下命令,替换name-of-ssh-host-here为步骤2中SSH配置文件中的主机名:

ssh-copy-id -i ~/.ssh/id_rsa-remote-ssh.pub name-of-ssh-host-here

在Windows上,在本地命令提示符中运行以下命令,替换name-of-ssh-host-here为步骤2中SSH配置文件中的主机名。

SET REMOTEHOST=name-of-ssh-host-here
SET PATHOFIDENTITYFILE=%USERPROFILE%\.ssh\id_rsa-remote-ssh.pub

scp %PATHOFIDENTITYFILE% %REMOTEHOST%:~/tmp.pub
ssh %REMOTEHOST% "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat ~/tmp.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && rm -f ~/tmp.pub"

关于这方面的内容可以查看微软官方的教程:官方配置教程

4、检测是否配置成功

上面所有步骤完成且无误后,就可从VS Code中看到如下界面,若未配置成功,红圈部分是不会先显示此类内容的。

注意:连接过程中会要求输入相关账户远程服务的密码进行登陆

右键点击上图红圈里面的选项选择在新窗口打开,出现下面红圈的内容(内容一般为远程服务器端的主机名)即表示以及安装成功。


到了这里还没有结束,这里只是成功连接到了远程服务器而已。


5、配置远程服务器端的python环境

这一步的操作与第一部分配置本地的python环境中的配置VS Code环境一致,直接参考即可。

关于插件的安装:

在VS Code上,本地安装的插件与远程服务器的插件是不共享的,因此需要安装两份插件。

在连接远程服务器端的VS Code界面会显示远程端和本地端所安装的插件

测试步骤依旧参考第一部分内容中的步骤。

三、参考链接

vscode 配置 python3开发环境:https://blog.csdn.net/weixin_40528417/article/details/81141567

配置SSH密钥:https://code.visualstudio.com/docs/remote/troubleshooting#_configuring-key-based-authentication

使用SSH在远程服务器上进行开发:https://code.visualstudio.com/docs/remote/ssh#_getting-started

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,802评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,109评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,683评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,458评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,452评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,505评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,901评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,550评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,763评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,556评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,629评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,330评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,898评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,897评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,140评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,807评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,339评论 2 342

推荐阅读更多精彩内容