这是d2slam部署经验的番外篇,主要是怎么使用vscode里的docker插件。
1 vscode安装docker插件
点击 vscode 的侧边栏的Extensions ,搜索 docker 并点击 Install 安装
2 点击左侧的 docker 图标
正常情况下应该出现容器、镜像等的信息,但是现在显示的是:
Failed to connect. Is Docker running?
permission denied while trying to connect to the Docker daemon socket at redacted:url Post "redacted:url dial unix /var/run/docker.sock: connect: permission denied
原因在于:“The Docker daemon binds to a Unix socket, not a TCP port. By default it’s the root user that owns the Unix socket, and other users can only access it using sudo. The Docker daemon always runs as the root user.” 不是超级用户无法使用。
修改方法:参考官网描述:
$ sudo groupadd docker
$ sudo usermod -aG docker $USER
$ newgrp docker
将当前用户添加到docker用户组。
可以通过如下命令进行验证,查看是否有权限:
$ docker ps
如果仍然无效,那是因为可能先打开vscode,再做上述修改。因此,正确的顺序应该是先修改,再打开vscode
3 vscode中运行并打开容器
首先点击左侧栏的 docker 图标,在左侧栏的 IMAGES 里面右击 pc ,点击 Run Interactive 可以在 vscode 里的命令行打开该容器。
- 方法1:同时也能在左侧栏的
CONTAINERS里看到d2slam:pc,右击并点击Attach Visual Studio Code - 方法2:安装
Dev Containers插件,点击左侧的Dev Containers图标,右击d2slam:pc并点击Attach in New Window
都可以在新的vscode界面打开该容器

本文详细描述了如何在VSCode中安装和配置Docker插件,解决Failedtoconnect权限问题,包括添加用户到docker组、正确启动顺序以及两种打开容器的方法:直接attach和使用DevContainers插件。
1234





