使用vscode的SSH插件连接Docker容器进行开发

1,021 阅读2分钟

作为一个curd boy是没想到能用上的, 最近新项目需要编译CGO, 但是我的电脑是M1,

所以申请了一台电脑, 用来编译x64的程序, 编辑器依然是宇宙第一的vscode.

首先讲一下我的大致配置思路,

在远程机子上跑docker, docker跑ubuntu镜像, 给ubuntu镜像配置sshd和C环境,

vscode安装插件远程插件进入容器内开发.

下面是详细的步骤:

安装docker, 略

跑容器有一点需要注意, 就是端口转发, 我属于比较懒, 所以直接使用了host模式

进入容器, 首先是换源, 然后

apt update

紧接着安装C环境,

apt-get install build-essential gdb

然后就是配置go环境, 去官网下载合适的版本之后解压, 放到合适的目录,

然后使用vim修改/etc/profile文件, 增加环境变量, 这样开发环境就配置完成了

下面讲述如何SSH

给ubuntu容器安装openssh-server

apt install openssh-server

安装完成之后为root用户设置密码

终端中输入:
passwd
然后按照提示输入两次密码即可

主要就是修改端口, 和开发root用户登陆, 我只修改了下面两项, 默认是注释的, 直接加上就可以了

文件路径:/etc/ssh/sshd_config

Port 9000
PermitRootLogin yes

然后启动sshd

service ssh start

这样你就能通过ssh链接上容器了

紧接着打开vscode, 插件搜索ssh,安装这个插件

安装成功之后你会得到这样一个图标

点击ssh的设置图标 先选择设置, 然后在新打开的tab中输入config的文件路径

文件内容如下:

Host可以随便输入, 我一般不会直接写ip
HostName 你的docker宿主机Ip, 因为用了host模式, 所以直接写宿主机的ip就可以
Port ssh端口
User 登陆用户, 容器内用户就是root
ServerAliveInterval 超时设置, 60就可

这个时候你会发现vscode中已经出现这个,

点击箭头可以这当前也进行连接, 点击窗口+可以在新建窗口进行链接

第一次链接会提示确认进行连接, 点击继续就可以了

链接成功之后, vscode的资源管理器会提示你选择文件夹, 这个时候选择你的开发目录即可,

同时, 你还需要在远程服务器中安装需要的LSP, 点击扩展tab, 进去之后把你所有需要的插件进行安装即可

到此你就可以畅快的进行开发了