1、vscode 访问docker本地环境
直接点击左下角连接图标,弹出选项可以选择容器,只要容器在本地运行者,选择attach可以看到运行中的容器可以选择,选择其中需要选择的就行
## 运行容器,可以-d后台运行都可以
docker run -it --rm -v D:\sound:/work -w/work nvcr***-py3 /bin/bash
或者也可以用vscode 相关docker第三方插件:
右键选择运行中的容器,选择attach命令行或者直接新开个窗口都可以
2、vscode 访问docker远程环境
参考:https://blog.csdn.net/qq_52678569/article/details/131253955
http://lihuaxi.xjx100.cn/news/1450281.html?action=onClick
上面的本地也可以通过端口ssh形式访问;不是容器任何服务器都可以通过ssh访问,如果需要vscode远程链接,操作步骤如下类似
运行容器:
docker run -p 10008:10008 -it 4c2**aac23 /bin/bash
1)首先docker容器需要安装ssh-server; 在容器中安装SSH服务
apt-get update
apt-get install openssh-server
apt-get install openssh-client
apt-get install ssh
apt-get install vim
接着修改ssh文件信息,将容器的10008端口暴露出来允许root用户使用ssh登录
vim /etc/ssh/sshd_config
#在刚刚打开的文件里添加以下内容,保存后退出:
Port 10008
PermitRootLogin yes #允许root用户使用ssh登录
重启ssh服务
/etc/init.d/ssh restart
设置root用户连接密码
passwd
2)本地vscode远程ssh连接
在Configuration中添加:
Host
HostName <服务器IP>
Port 10008
User root
ForwardAgent yes
这里连接一直卡住问题就按照下面方式解决:
vscode卡在Setting up SSH Host XX:Copying VS Code Server to host with scp参考:https://blog.csdn.net/qq_39448884/article/details/124562118
需要进入容器设置vscode远程配置,把对应包解压到容器类~/.vscode-server/bin/ 文件夹下:
步骤一:查看commit id,在本地的vscode的关于中查找
其中提交后的一串英文和数字即为commit id,或者登陆到服务器$HOME文件夹中,ls -a查看隐藏目录$HOME/.vscode-server/bin下的文件夹名称
vscode软件help-》about可以看到
步骤二:在该链接下手动下载server的压缩包vscode-server-linux-x64.tar.gz
https://update.code.visualstudio.com/commit:${COMMIT_ID}/server-linux-x64/stable
注意将${COMMIT_ID}替换为刚刚查到的commit id。
实际上vscode版本还分stable和insider的,vscode为蓝色图标的为stable版,绿色图标的为insider版。insider版需要将上述链接最后的stable改成insider。
步骤三:自己找一个传输软件,上传该压缩包到linux服务器的这个目录下~/.vscode-server/bin
或者直接容器类wget https://update.code.visualstudio.com/commit:${COMMIT_ID}/server-linux-x64/stable
下载的内容进行解压:
tar -zxf stable
mv vscode-server-linux-x64 ${COMMIT_ID}
步骤四:解压,并更改解压文件夹名字
cd ~/.vscode-server/bin
tar -zxf vscode-server-linux-x64.tar.gz
mv vscode-server-linux-x64 ${COMMIT_ID}
然后尝试重新连接,即可解决问题 。
vscode最终连接效果,记住登录密码是上面第一步容器里设置passwd的密码