用VSCode Remote-SSH做Docker环境中的开发

概述

为什么会有用VSCode做Docker环境中的开发这个话题?
因为我们开发的主要内容是在Docker环境内,所以如果使用一般的Host环境下的VSCode,会有很多Path、Lib对不上的问题。

为了解决这个问题,以前我们是在Docker里引入Host的VSCode并使用系统X-Window桌面或者用VNC Server使用GUI。这一次通过通过在Docker环境下开sshd,就可以让VSCode远程连到Docker中,与本机VSCode有同样的体验。

配置步骤

Docker外的准备

  • 在Docker外关闭sshd:sudo service ssh stop

在Docker内安装Open SSH Server

  • 进入Docker
  • 安装服务 sudo apt-get install -y openssh-server
  • 编辑配置 sudo vi /etc/ssh/sshd_config ,找到以下这些行,解除这些行首的注释
  • 如果有需要在Host上也运行SSH Server,为了避免冲突可以修改Port端口
Port 22
ListenAddress 0.0.0.0
ListenAddress ::
PermitRootLogin yes
  • 启动服务 sudo service ssh restart
  • 参考 https://www.cnblogs.com/zhuminghui/p/11066367.html

远程登录

  • 远程登入 ssh username@docker_host_ip ,正常同意输入密码
  • 设定免密码登录 ssh-copy-id username@docker_host_ip ,如果从来没有用过,需要生成公私秘钥
  • 参考 https://zhuanlan.zhihu.com/p/558991188

使用VSCode

  • 在自己PC上打开VSCode
  • 选择左下角Remote Connection,也可以正中间的命令中选 Connect to Host… Remote-SSH
  • 输入运行着Docker的主机IP和端口
  • VSCode会自行初始化

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-29 10:18:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-29 10:18:03       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-29 10:18:03       87 阅读
  4. Python语言-面向对象

    2023-12-29 10:18:03       96 阅读

热门阅读

  1. centos 编译安装 icu

    2023-12-29 10:18:03       67 阅读
  2. SQL高级:递归查询

    2023-12-29 10:18:03       56 阅读
  3. HIVE笔记

    2023-12-29 10:18:03       55 阅读
  4. Nginx屏蔽垃圾邮件骚扰IP的方法

    2023-12-29 10:18:03       61 阅读
  5. LeetCode-827. 最大人工岛

    2023-12-29 10:18:03       69 阅读
  6. Windows Server 2012R2密钥

    2023-12-29 10:18:03       75 阅读
  7. Cookie与Session详解

    2023-12-29 10:18:03       72 阅读
  8. 32单片机按键扫描 实现长短按

    2023-12-29 10:18:03       68 阅读
  9. electron-dl用于在Electron中下载多个文件

    2023-12-29 10:18:03       66 阅读
  10. Spring Boot 自动配置功能介绍

    2023-12-29 10:18:03       60 阅读
  11. 事件触发、事件捕获与事件冒泡(js的问题)

    2023-12-29 10:18:03       68 阅读