vscode 连接远程docker容器 转载

以下以amazon 的镜像作为例子(基于yum,对于debian系列也会给出建议),介绍vscode如何连接docker容器进行开发,docker容器可部署在远程服务器上。

一、在服务器容器中配置ssh

1. 通过一个其他的端口进入容器,这里使用5678端口

 
shell
复制代码
docker run -it -d -p 5678:22 amazon

2. 下载openssh

centos/fedora

 
shell
复制代码
yum install openssh-server -y

debian/ubuntu

 
shell
复制代码
apt-get install openssh-server

3.设置root密码

 
shell
复制代码
passwd

如果容器内没有这个模块,可以安装之后再尝试

4. 修改配置文件

 
shell
复制代码
vi /etc/ssh/sshd_config

把这三行的注释去掉:

Port 22 PermitRootLogin yes PubkeyAuthentication yes

5. 启动ssh服务

这里可能会报错,提示没有 /etc/ssh/ssh_host_rsa_key/etc/ssh/ssh_host_ecdsa_key/etc/ssh/ssh_host_ed25519_key这些文件 解决方案:

 
shell
复制代码
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key

启动ssh服务

 
shell
复制代码
/usr/sbin/sshd -D &

6. 验证效果

在容器所在的主机上连接:

 
shell
复制代码
ssh -p 5678 root@0.0.0.0

远程机器连接:

 
shell
复制代码
ssh -p 5678 root@remote_host

7. 免密钥登陆

这里和正常ssh免密钥登陆流程一样,这里仅仅提一下,详细可以bing下

 
shell
复制代码
ssh-copy-id -p 5678 root@remote_host

二、使用vscode连接

首先需要确保容器内包含 tar 这个工具,否则会报Fail to install VS-Code Server这样的错误

我是在windows电脑上安装的vscode,只需要在vscode中安装remote-ssh 这个插件,然后就像连接普通远程服务器那样操作就可以了。

在这里插入图片描述

参考:

  1. zhuanlan.zhihu.com/p/361934730
  2. www.cnblogs.com/netonline/p…
  3. blog.csdn.net/wang7049875…
  4. www.cnblogs.com/sunshine-20…

作者:我就菜咋了
链接:https://juejin.cn/post/7163500012565954591
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

posted on 2023-06-27 16:57  我和你并没有不同  阅读(229)  评论(0编辑  收藏  举报