配置VS Code + Ubuntu服务器 + Docker + Python:远程调试Debug

配置VS Code + Ubuntu服务器 + Docker + Python:远程调试Debug

0.背景和原理

背景:

  1. 有服务器且在服务器中安装了Docker
  2. 使用VS Code进行远程Debug

原理:

​ 使用SSH来实现

1.Docker容器配置

以新建tensorflow的Docker容器为例

  1. 拉取tensorflow的镜像

    使用指令

    sudo docker pull tensorflow/tensorflow:latest-gpu
    

    即可拉取tensorflow-gpu的镜像

    使用指令

    sudo docker image ls
    

    即可查看当前Docker中保存的全部镜像

在这里插入图片描述

  1. 新建容器

    新建容器的指令如下

    sudo docker run --gpus all -it --name new-tf2 -p 1234:22 -v /home/yons/new:/home/new -v /media/yons/ubuntu:/home/media tensorflow/tensorflow:latest-gpu /bin/bash
    

    指令中:

    1. --gpus all表示该容器使用服务器的所有gpu,或使用--gpus 'device=0'来指定某一个GPU

    2. -it表示该容器使用终端进行交互式操作

    3. --name new-tf2表示对该容器命名为“new-tf2”

    4. -p 1234:22表示将容器的22端口映射到宿主机的13044端口

    5. -v /home/yons/new:/home/new表示将本地目录“/home/yons/new”映射到容器的“/home/new”中

      -v /media/yons/ubuntu:/home/media/media/yons/ubuntu是本机中机械硬盘(第二块硬盘)的地址,该指令表示将第二块硬盘的地址映射到/home/media中

    6. tensorflow/tensorflow:latest-gpu表示使用该镜像,/bin/bash表示使用系统的终端软件

    注意!容器的本地地址映射和命名是十分重要的!

    新建其他的容器也基本是这个流程,找到正确的pull对应镜像方法最重要,得到镜像之后按照第二步的方法执行即可

    建立容器后会直接进入容器,我们在/home目录下就可以看到映射的两个文件夹

    在这里插入图片描述

  2. 进入容器,修改容器的root用户密码

    passwd

    在这里插入图片描述

  3. 更新apt,并安装openssh-server

    apt-get update

    在这里插入图片描述

    这里的报错是针对nvidia的库,对安装openssh-server没有影响

    apt-get install openssh-server

  4. 修改ssh的配置文件,使其允许root用户登录

    Vi /etc/ssh/sshd_config

    若提示没有vi指令,则安装vimapt-get install vim

    vim的使用方式建议百度,或者使用nano等都行

    PermitRootLogin项后面的参数修改为yes

    在这里插入图片描述

  5. 启动SSH服务并测试连接

    service ssh start

    在这里插入图片描述

2.VS Code配置

  1. 安装插件Remote SSHPython

    在这里插入图片描述

  2. 点击左下角的箭头,在对话框中选择Open SSH Configuration File,选择第一个config文件进行修改

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

  3. 修改文件,添加上容器的SSH设置

    Host 123
    	HostName 192.168.1.3
    	Port 1234
    	User root
    

    Host表示建立的连接的名称,自定义即可

    HostName表示服务器的ip

    port表示连接的端口,这里填上新建容器时映射的服务器的端口号

    User表示登录的用户

  4. 点击左侧的Remote Explore,可以看到已经有了远程服务器123

    右键服务器123,任意选择一个即可

    Connect to Host in Current Window表示在当前窗口打开

    Connect to Host in New Window表示在新窗口中打开连接

    在这里插入图片描述

    在弹出窗口中选择Linux,在下方的TERMINAL中输入yes,并输入之前设置的root用户的密码

    在这里插入图片描述

    在输入完密码之后,VS Code会在容器中安装一些必要的组件,稍等片刻即可

  5. 进入Explore,选择Open Folder,在弹出对话框内找到你的项目路径并选择OK

    如:/home/admin/project1/

    在这里插入图片描述

    在TERMINAL中会提示再输入一次密码

  6. 进入VS Code的扩展,可以看到提示:将Python安装到SSH:123

    在这里插入图片描述

  7. 使用Shift + Ctrl + P,在对话框中找到Python: Select interpreter并选择,在展开的选项中找到你需要用的Python路径

    在这里插入图片描述

    在这里插入图片描述

  8. 点击左侧的Run and Debug,选择create a luanch.json

    在这里插入图片描述

    在弹出窗口中选择Python File,就会进入launch.json文件

    在这里插入图片描述

  9. 在代码中设置断点,即可开始快乐Debug

    在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值