VsCode调试远程服务器上面的Docker容器

news2024/11/25 6:33:50

第一步 VsCode 连接ssh

  1. 下载安装VsCode(Visual Studio Code),首次安装会提示你安装Chinese(Simplified)中文简体,安装完后重新打开就是汉化界面了。
  2. 在左边侧边栏找到扩展选项,然后安装Remote Development插件,里面包含了Remote SSHWSLDev ContainersRemote - Tunnels四个插件。

    image.png

  3. 安装后你的左边侧边栏就会出现远程资源管理器了,然后切换到远程(隧道/SSH),鼠标移到下面的SSH,就会出现一个+号了,点击一下+号。

    image.png

  4. 提示需要输入ssh命令。输入示例:ssh root@xxx.xxx.xxx.xxx 即可。root是服务器用户名,xxx.xxx.xxx.xxx是远程ip地址。输入完后回车

    image.png

  5. 回到刚刚到界面,点击图片刷新一下,就可以看到你刚刚输入的ip地址了。右键这个ip,选择在当前窗口中连接即可。

    image.png

  6. 后面会让你输入密码,每次打开都要输入。可以参考一下附录ssh免密配置,强烈建议去配置一下,大概几分钟可以搞定,后续会方便很多。

第二步,启动容器服务

  1. 下面以trt2023复赛为例。在服务器终端,先clone一下你的代码,然后进入你的代码目录。
  2. 创建并后台启动docker容器:
docker run --gpus all \
  --name trt2023 \
  -d \
  --ipc=host \
  --ulimit memlock=-1 \
  --restart=always \
  --ulimit stack=67108864 \
  -v ${PWD}:/root/workspace/trt2023 \
  [镜像名称] sleep 8640000

第三步,VsCode连接容器

  1. VsCode侧边栏选择远程资源管理器,然后下拉框选择开发容器,点击一下刷新(如果没配置ssh免密,就需要输入一下密码)。

    image.png

  2. 选中刚刚到容器,选择在当前窗口中附加即可。

    image.png

  3. 然后打开你刚刚映射的目录/root/workspace/trt2023即可。
  4. 安装一下Python插件,即可开始享受愉快的编码调试过程了。

其他

ssh免密登录配置
  1. 本机生成ssh key,一路回车即可。若本机已经生成过了,则可以忽略。
ssh-keygen
  1. 复制本机公钥。
  • for Linux/Mac
cat ~/.ssh/id_rsa.pub
  • for Windows。去文件管理器,一般在C:\user\xxxx\.ssh目录下,如果看不到.ssh目录,则可能需要打开隐藏文件显示。然后用记事本打开id_rsa.pub文件,copy里面的内容即可。
  1. 连接到远程服务器(注意是连服务器,不是连服务器的容器)。然后做以下配置。
  • 创建.ssh目录,如果目录已经存在则可以忽略。
mkdir ~/.ssh
  • 看看authorized_keys文件是否存在(不存在可以用touch ~/.ssh/authorized_keys命令手动创建一个),并且观察其权限是否ok。
ls -lh ~/.ssh/authorized_keys
  • 输出下面这个说明是ok的,-rw说明是root用户可读可写,组用户和宾客用户都不行。
-rw------- 1 root root
  • 如果你实在不确定是不是ok,暴力一下,直接重新给他授权即可。
chmod 600 ~/.ssh/authorized_keys
  1. 将你之前复制的公钥粘贴到刚刚到授权文件里面。可以用下面的命令一键完成。
echo "你的公钥内容xxxx" >> ~/.ssh/authorized_keys
  1. 到这一步基本是ok了,如果不ok,则需要检查一下ssh配置。
  • 编辑ssh配置
vim /etc/ssh/sshd_config
  • 修改前
#StrictModes yes
#AuthorizedKeysFile .ssh/authorized_keys
PermitRootLogin prohibit-password
  • 修改后
StrictModes no
AuthorizedKeysFile .ssh/authorized_keys
PermitRootLogin yes

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1604782.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

FAT16文件系统

FAT16 大端存储:高位字节放在低地址端,低位字节放在高地址端。 小端存储:低位字节放在低地址端,高位字节放在高地址端。 举一个例子,比如数字0x12 34 56 78在内存中的表示形式为: 大端模式: 低地…

【Gradle】Gradle的构建过程

Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,也增加了基于Kotlin语言的kotlin-based DSL,抛弃了基于XML的各种繁琐配置。 面向Java应用为主。当前其支持的语言C、J…

二、pwn - 零基础ROP之PIE保护绕过-碰撞

欲学本文,先看前文:一、pwn - 零基础ROP之Android ARM 32位篇(新修订,精华篇)-CSDN博客 代码、文件同第一篇,自行复制。本文唯一区别在于,我们不利用vulnerable_function打印的地址,无法定位pie base地址,直接随机碰撞(爆破)~ 有一定比例成功的可能,贴近实战! 多…

终于总结出一套小红书万能涨粉公式

新手做小红书,最关心的除了变现、提升流量、应该就是涨粉了。 但关于小红书涨粉,小伙伴表示难如登天,臣妾做不到啊。 别担心,小易拆解近100个博主账号后,终于总结出小红书涨粉公式,垂直不违规干货人设活跃…

IDEA2024配置RunDashBoard(Services)面板

IDEA2024配置RunDashBoard(Services)面板 新版本的IDEA没有RunDashBoard,取而代之的是Services面板,不需要配置workspace.xml文件; 本文教你简单的方法就能一个SpringBoot的Main运行多次,方便调试。 1、配置启动类 导航栏,Edit…

基于SpringBoot的“外卖点餐系统”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“外卖点餐系统”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:SpringBoot 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 系统功能图 用户功能界面 订单管理界面 配送单管…

IO基础合集

IO基础合集 1. File类1.1 概述1.2 构造方法1.3 常用方法获取功能的方法绝对路径和相对路径判断功能的方法创建删除功能的方法 1.4 目录的遍历 2. IO概述2.1 什么是IO2.2 IO的分类2.3 IO的流向说明图解2.4 顶级父类们2.5 IO流体系结构 3. 字节流3.1 一切皆为字节3.2 字节输出流【…

PTA 编程题(C语言)-- 特殊a串数列求和

题目标题: 判断素数 题目作者:颜晖 浙大城市学院 给定两个均不超过9的正整数a和n,要求编写程序求aaaaaa⋯aa⋯a(n个a)之和。 输入格式: 输入在一行中给…

Java项目:基于SSM框架实现的心遗非遗文创电商平台(源码+数据库)

一、项目简介 本项目是一套基于SSM框架实现的心遗非遗文创电商平台 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试,eclipse或者idea 确保可以运行! 该系统功能完善、界面美观、操作简单、…

过来人的经验告诉你,精益管理培训值得一试!

精益管理作为一种被全球众多企业验证过的有效管理模式,越来越受到企业的青睐。那么,作为一个过来人,我想分享一些关于精益管理培训是否值得参加的看法和经验。 精益管理培训的价值,不仅仅在于学习一套理论知识,更在于掌…

4.16作业

1.总结keil5下载代码和编译代码需要注意的事项 一、在编译代码时需要先点击魔术棒点击 修改flash Downlond 和pack 二、可以通过F12转跳到对应的函数中,查看函数的原型 三、注释出现乱码通过 Edit中的中的来修改 四、要先bulid在load 2.总结STM32Cubemx的使用方…

如何批量把照片转为jpg?批量转jpg最简单方法

如果伙伴们经常在下载保存图片的话就会发现,大多会以png等格式被保存下来。但是jpg格式兼容性比较好,为了方便使用通常都会将图片都转换成jpg格式。一张张地转化未免太过麻烦,那怎么把图片批量转为jpg? 压缩图网站,点击“图片转…

海尔推行TPM管理的经验分享:打造高效制造新标杆

海尔集团,作为家电行业的佼佼者,其推行TPM(全面生产维护)管理的成功经验,无疑为众多寻求管理突破的企业提供了宝贵的借鉴。 一、TPM管理的核心理念 TPM(Total Productive Maintenance)即全面生…

异地远程桌面软件,比向日葵,todesk更好用

在平时异地远程其他电脑,只能借助向日葵和todesk,但是有时候很不稳定,而且不开会员,画面不清晰。 现在我学会了怎么用电脑自带的远程桌面软件来异地远程电脑, 主要工具是Tailscale,可以帮我们异地组成虚拟局…

线上剧本杀小程序发展趋势如何?

随着几年的快速发展,剧本杀行业进入到了大众的视野,不过从2022年开始,行业就开始处于下滑趋势,但是行业反而变得更加的规范化。 经历过下滑发展后,剧本杀行业已经趋向专业化、精品化发展,行业正在复苏&…

李彦宏:开源模型会越来越落后

李彦宏:开源模型会越来越落后 昨天听完的李总讲座 大家以前用开源觉得开源便宜,其实在大模型场景下,开源是最贵的。所以,开源模型会越来越落后。 ——李彦宏 至于开源还是闭源,这和企业的利益息息相关。 随着科技的迅猛…

pymavlink 解析自定义mavlink消息。

1.下载mavlink_master包,用于将xml 文件生成对应的py文件。地址是 https://codeload.github.com/mavlink/mavlink/zip/refs/heads/master 进入目录运行python .\mavgenerate.py 呈现gui程序 2.根据发送端的消息定义格式修改接收解析段的pymavlink有关库。 可修改……

百科不全书之 docker记录

docker记录 1.参考文件2. Docker简介与虚拟机的区别 3. 安装Docker注意 Windows家庭版的要额外设置 1.参考文件 参考视频:B站【GeekHour】30分钟Docker入门教程: link 2. Docker简介 Docker是一个用于构建运行 传送 应用程序的平台。 与虚拟机的区别 虚拟机…

JavaSE高阶篇-多线程问题研究

一、进程与线程 1)进程 程序:静态的,就是存放在磁盘里的可执行文件,是一系列指令的集合 进程:进入到内存中执行的应用程序,是系统运行的基本单位,有独立的运行空间 具体点说:一个程…

clevercsv,一个非常实用的 Python 库!

更多Python学习内容:ipengtao.com 大家好,今天为大家分享一个非常实用的 Python 库 - CleverCSV。 Github地址:https://github.com/alan-turing-institute/CleverCSV CSV(Comma-Separated Values)是一种常见的数据格式…