VS Code(Visual Studio Code)本地(local)和远程(ssh)Docker Container 下的 Python 开发和调试

这篇具有很好参考价值的文章主要介绍了VS Code(Visual Studio Code)本地(local)和远程(ssh)Docker Container 下的 Python 开发和调试。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 目的需求

我们通常在 Python 上进行 人工智能算法 开发,但是这通常需要专用的运行环境、依赖库和配置文件。为了 人工智能算法 开发的便利,通常会使用 Docker,因为 Docker 可以将我们的人工智能算法工程打包封装到一个 Container (容器)中,该 Container (容器)包含了 人工智能算法工程 的代码、运行环境、依赖库、配置文件等必需的资源,通过 Container (容器)就可以实现方便快速并且与平台解耦的自动化部署方式,无论你部署时的环境如何,Container (容器)中的 人工智能算法工程 都会运行在同一种环境下。

然而 Docker Container 下通常是命令行交互,为了使 对应 Python 的开发和调试 更加便捷,我们使用 VS Code(Visual Studio Code)+ Remote Development 插件 来进行本地(local)和远程(ssh)Docker Container 下的 Python 开发和调试。

说明:PyCharm 付费的专业版有类似功能,但免费的社区版没有类似功能,所以这里使用 免费的解决方案(VS Code + Remote Development 插件)

2. VS Code 简介

VS Code,全称Visual Studio Code,是一款由微软开发的跨平台免费源代码编辑器。它可以在Windows、macOS和Linux等多个操作系统上运行,并且提供了丰富的功能和扩展支持。

VS Code支持语法高亮、代码自动补全(又称IntelliSense)、代码重构、查看定义功能,并且内置了命令行工具和Git版本控制系统。用户可以通过更改主题和键盘快捷方式实现个性化设置,也可以通过内置的扩展程序商店安装扩展以拓展软件功能。VS Code使用Monaco Editor作为其底层的代码编辑器。

在开发者社区中,VS Code因其轻量级、多平台支持和丰富的插件生态系统而备受青睐。根据Stack Overflow组织的开发者调查,Visual Studio Code被认为是最受开发者欢迎的开发环境之一。

3. 使用实践:一个简单的实例

3.1 准备工作

3.1.1 远程服务器

3.1.1.1 ubuntu 20.04 系统

说明:此处以 ubuntu 20.04 为介绍,其他系统可以举一反三

3.1.1.2 部署 docker 服务

(1) 安装 docker

  安装 docker

(2)编写 Dockerfile 文件

FROM ubuntu:20.04
MAINTAINER hjw
RUN apt-get update && \
    apt-get install -y python3 && \
    apt-get install -y vim

CMD ["/bin/bash"]

说明:此处在文件夹 docker_test 下新建 Dockerfile,并编辑内容如上所示

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(3)通过 Dockerfile 构建 docker

docker build -t docker_test:1.0 .

说明:使用当前目录的 Dockerfile 创建镜像,标签为 docker_test:1.0

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(4)运行构建好的 docker container

docker run -it --name test -p 8022:22 --rm docker_test:"1.0"

说明:使用镜像 docker_test:1.0 启动一个容器,并将容器命名为 test,并将容器的 22 端口映射到主机的 8022 端口,-it 确保 docker 后台交互运行

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(5)进入 container 配置 root 密码

passwd

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(6)进入 container 安装配置软件

apt-get update
apt-get install -y vim

3.1.1.3 Docker Container 的 SSH 服务配置

(1)安装 ssh

apt-get install -y openssh-server

(2)修改 ssh 配置

vi /etc/ssh/sshd_config

添加如下配置:

PubkeyAuthentication yes

PermitRootLogin yes

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(3)重启 ssh 服务

service ssh restart

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

3.1.2 本地计算机

3.1.2.1 windows 10 系统

说明:此处以 windows 10 为介绍,其他系统可以举一反三

3.1.1.2 配置 VS Code 服务

(1)安装 VS Code

  VS Code 官方下载链接

(2)Extensions 添加 Remote Development

说明:参考下图,添加并安装完成 Remote Development,进行 reload 或者 重启 VS Code

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(3)配置 ssh

“Ctrl + Shift + P” ,输入“Remote-SSH”,选择“Open SSH Configuration File”,打开“****.ssh\config”,编辑如下

Host alias
    HostName 10.78.3.124
    Port 8022
    User root

说明:参考下面3幅图,其中 Host 随便选名字,HostName 是远程服务器的 IP 地址,Port 是 远程服务器的 docker 映射到服务器上的端口号(此处需要与 3.1.1.2 (4) 中 docker_test:1.0 的端口号对应,即8022),User 是登陆账户

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(4)连接 SSH 主机

“Ctrl + Shift + P” ,输入“Remote-SSH”,选择“Connect to Host…”,然后点击“alias”,接着选“Linux”,“Continue”,最后按提示输入 3.1.1.2 中 (5)所配置的 root 密码,在左下角显示“SSH: alias”,说明已经成功连接 docker。

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

说明:输入 root 密码,密码与 3.1.1.2(5) 中设置保持一致

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

说明:连接的过程中,需要下载资源并进行配置,需要耗费一定的时间

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

说明:在左下角显示“SSH: alias”,说明已经成功连接 docker,并且 TERMINAL 显示 docker 命令行,此过程中会需要再次输入 root 密码,密码与 3.1.1.2(5) 中设置保持一致

连接异常处理

出现如下连接异常,主要是 key 验证失败,只需要清除原先的 key 即可。

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

解决方法是,找到对应 known_hosts 文件,并删除其中原来的 host key 条目(与前文对应,其中 [10.78.3.124]:8022 是 远程服务器的 IP 和 Port),这里对应的是 [10.78.3.124]:8022 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBIRamKyTqfJ/t9vkADiZ4DUK9c6HnwZlPydU5zBAf2WU4MQq3KC1ceOEKqKDqR09wAJHXWBTWkQ/mSKNTBzQ7fE=,将此条目删除后,重启 VS Code,重复 (4)连接 SSH 主机 操作即可
vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

连接异常处理,说明:在 ubuntu 系统中,使用命令 ssh-keygen -f “/home/hjw/.ssh/known_hosts” -R “[10.78.3.124]:8022” 删除其中原来的 host key 条目(与前文对应,其中 [10.78.3.124]:8022 是 远程服务器的 IP 和 Port),将此条目删除后,重启 VS Code,重复 连接 SSH 主机 操作即可

(5)Extensions 添加 Python 插件

说明:此处为 SSH:alias 添加,SSH:alias 添加完成,即安装在 服务器 docker 中,最后重启 VS Code

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

安装完成后:vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(6)配置 Python 解释器

“Ctrl + Shift + P” ,输入“Python:Select Interpreter”,选择需要的 Python 解释器

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

3.2 简单实例

在完成 3.1 准备工作 后

3.2.1 本地(local)- 远程服务器

(1)在远程服务器安装 VS Code

(2)在远程服务器上的 VS Code 中,Extensions 添加 Remote Development

说明:参考下图,添加并安装完成 Remote Development,进行 reload 或者 重启 VS Code
vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(3)Remote Explorer 选择 Dev Containers

说明:参考下图,选择 Dev Containers

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(4)选择 docker_test:1.0,Attach in Current Window

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(5)在 VS Code 中,点击 “File”,并选择 “Open Folder”,打开 远程服务器 docker 的 “home” 路径。

说明:参考下图,打开 远程服务器 docker 的 “home” 路径,其中左下角显示当前连接的 Container 为 docker_test:1.0 (docker_test)

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(6)在 “home” 下新建文件 “test.py”,内容如下:

# -*- coding: utf-8 -*-
# @Last Modified by:   hjw
# @Last Modified time: 2024-02-27 16:00

print("hello, world!")

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(7)打开 “test.py”,并设置断点,进行调试

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

3.2.2 远程(ssh)- 本地计算机

(1)在本地计算机已经连接连接远程服务器 docker后,在本地计算机 VS Code 中,点击 “File”,并选择 “Open Folder”,打开 远程服务器 docker 的 “home” 路径。

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(2)在 “home” 下新建文件 “test.py”,内容如下:

# -*- coding: utf-8 -*-
# @Last Modified by:   hjw
# @Last Modified time: 2024-02-27 16:00

print("hello, world!")

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

(3)打开 “test.py”,并设置断点,进行调试

vscode python本地docker解释器,# 开发 工具,vscode,ssh,docker,python

3.2.3 总结

到此,完成 一个简单的实例,即 VS Code(Visual Studio Code)本地(local)和远程(ssh)Docker Container 下的 Python 开发和调试,然后可以在此基础上进行类推进行更复杂的开发和调试。文章来源地址https://www.toymoban.com/news/detail-841648.html

到了这里,关于VS Code(Visual Studio Code)本地(local)和远程(ssh)Docker Container 下的 Python 开发和调试的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Visual Studio Code (VS Code)安装教程

    Visual Studio Code(简称“VS Code”)。 1.下载安装包 VS Code的官网: Visual Studio Code - Code Editing. Redefined 首先提及一下,vscode是不需要破解操作的; 第一步,看好版本,由于我的系统就是windows,所以默认选择就好; 第二步,跳转页面,稍等一下会自动下载安装包;  下载完成后双

    2024年03月17日
    浏览(74)
  • Visual Studio Code (VS Code) – C++ 入门

    —— 基于 VS Code 官方文档的全面的、具体的入门级教程 欢迎访问作者的主页:Xi Xu’s Home Page 本教程由文章(本文)和视频组成。 在本教程中,您将为使用 UCRT64 中的 GCC C/C++ 编译器(gcc/g++)和 GDB 调试器配置 VS Code 来创建在 Windows 上运行的程序。 配置 VS Code 后,您将在 V

    2024年02月03日
    浏览(112)
  • visual studio code(vs code)历史版本下载

    November 2023 (version 1.85) 注意网页左边。

    2024年02月20日
    浏览(62)
  • Visual Studio Code (VS Code) – C/C++ 入门

    —— 基于 VS Code 官方文档的全面的、具体的入门级教程 欢迎访问作者的主页:Xi Xu’s Home Page 本教程由文章(本文)和视频组成。 在本教程中,您将为使用 UCRT64 中的 GCC C/C++ 编译器(gcc/g++)和 GDB 调试器配置 VS Code 来创建在 Windows 上运行的程序。 配置 VS Code 后,您将在 V

    2024年02月16日
    浏览(58)
  • Visual Studio Code (VS Code)安装教程(配图超详细)

    Visual Studio Code(简称“VS Code”)是Microsoft在2015年4月30日Build开发者大会上正式宣布一个运行于 Mac OS X、Windows和 Linux 之上的,针对于编写现代Web和云应用的跨平台源代码编辑器,可在桌面上运行,并且可用于Windows,macOS和Linux。它具有对JavaScript,TypeScript和Node.js的内置支持

    2024年01月25日
    浏览(56)
  • Ubuntu 22.04安装Visual Studio Code(VS Code)

    Ubuntu 22.04安装Visual Studio Code 打开浏览器,访问VS Code的官方网址:https://code.visualstudio.com。 在首页的左侧有两个蓝色的按钮,点击左边的按钮,下载.deb格式的安装包,下载完成后得到如下文件。 下载完成后,可以通过图形界面或命令行的方式安装,以下两种方式 任选一种 即

    2023年04月08日
    浏览(49)
  • 【Visual Studio Code】--- Win11 安装 VS Code 超详细

    在编程的艺术世界里,代码和灵感需要寻找到最佳的交融点,才能打造出令人为之惊叹的作品。 而在这座秋知叶i博客的殿堂里,我们将共同追寻这种完美结合,为未来的世界留下属于我们的独特印记。 开发系统:Windows11 软件版本:SVisual Studio Code Vscode官网 同意条款 选择安

    2024年02月12日
    浏览(57)
  • Visual Studio Community与Visual Studio Community与VS Code有啥区别

    dio Code是由微软推出的两款主流开发工具,虽然它们都以“Visual Studio”为名,但是它们在功能、适用领域和使用场景上有着明显的区别。下面对它们进行简单的介绍跟比较,来帮助开发者更好地了解它们之间的差异。 Visual Studio Community: Visual Studio Community是一款功能丰富的集

    2024年03月09日
    浏览(55)
  • 修改『Visual Studio Code(VS Code)』插件默认安装路径的方法

    提示:文章中“『』”符号“加粗”都为着重说明,此二者同时使用一般为输入内容。 作者希望将『Visual Studio Code(以下简称为“ VS Code ”)』的插件安装在 数据盘 (D盘),用于统一管理,因此需要修改VS Code插件 安装路径 。 VS Code插件默认的安装位置为: C:Users{个人用户名

    2024年02月07日
    浏览(66)
  • 【Visual Studio Code】--- Win11 配置 VS Code 为中文 超详细

    在编程的艺术世界里,代码和灵感需要寻找到最佳的交融点,才能打造出令人为之惊叹的作品。 而在这座秋知叶i博客的殿堂里,我们将共同追寻这种完美结合,为未来的世界留下属于我们的独特印记。 开发系统:Windows11 软件版本:Visual Studio Code 装插件前最好将存储路径修

    2024年02月12日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包