vscode 连接远程docker容器

本文介绍了如何在Docker容器中配置SSH服务,包括通过不同Linux发行版安装openssh-server,设置root密码,修改配置文件,生成SSH密钥,启动sshd服务,并验证SSH连接。此外,还讲解了如何确保容器内有tar工具以支持VSCode远程连接,并使用Remote-SSH插件进行连接。
摘要由CSDN通过智能技术生成

以下以amazon 的镜像作为例子(基于yum,对于debian系列也会给出建议)

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

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

docker run -it -d -p 5678:22 amazon

2. 下载openssh

centos/fedora

yum install openssh-server -y

debian/ubuntu

apt-get install openssh-server

3.设置root密码

passwd

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

4. 修改配置文件

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这些文件
解决方案:

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服务

/usr/sbin/sshd -D &

6. 验证效果

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

ssh -p 5678 root@0.0.0.0

远程机器连接:

ssh -p 5678 root@remote_host

7. 免密钥登陆

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

ssh-copy-id -p 5678 root@remote_host

二、使用vscode连接

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

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

在这里插入图片描述

参考:

  1. https://zhuanlan.zhihu.com/p/361934730
  2. https://www.cnblogs.com/netonline/p/7410586.html
  3. https://blog.csdn.net/wang704987562/article/details/72722263
  4. https://www.cnblogs.com/sunshine-2015/p/6384471.html
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值