VSCode远程调试docker中的代码
前期准备
⾸先,确保服务器(指ubuntu,下同)与本地(windows,下同)可以通过ssh建⽴正常通信,并且可以在本地使⽤vscode调试服务器中的代码。如果不⾏,请参照
docker容器的启动
为了能够让vscode远程到docker中。我们需要在启动docker容器的时候为其分配端⼝号。具体的启动⽅式如下:
docker run -it --gpus all -p <linux IP>:8022:22--name="<;容器名称>"<;镜像名称/ID全称>/bin/bash
其中,–gpus all这句话是为了能够让容器访问调⽤宿主服务器的显卡;:8022:22 是为了将docker中的22端⼝映射到宿主服务器上的8022端⼝。
docker设置
⾸先确保docker中激活了root,如果没有,输⼊docker重启容器命令
passwd
设置密码来激活root。
此后,确保docker中安装了ssh,如果没有,输⼊
apt-get install openssh-server
apt-get install openssh-client
以安装ssh服务。
然后修改ssh配置:
vim /etc/ssh/sshd_config
# PermitRootLogin prohibit-password
PermitRootLogin yes
RSAAuthentication yes
PubkeyAuthentication yes
保存后退出。然后重启ssh服务
/etc/init.d/ssh restart
Tip
当你发现原来与docker连接的好好的,结果突然就不⾏了的时候。可能是ssh没有打开。通过在服务器本地输⼊
ssh root@127.0.0.1-p 8022
试⼀下是否能连接通。如果不⾏说明ssh可能没有打开,再去打开⼀下看看。
尝试连接
最后再⽤vscode中的remote-ssh连接⼀下docker就⾏了。ctrl+shift+p 打开配置⽂件后,添加如下命令:
Host docker #随便起
HostName xxxx #服务器IP
User root
Port 8022 #启动docker容器的时候设定的服务器的端⼝号
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论