VsCode插件Dev Containers
大约 2 分钟
VsCode插件Dev Containers
使用docker容器过程中,最常见的操作是进入容器内查看文件、修改配置等操作
- 以前
使用shell进入容器内,使用linux命令操作
docker ps
docker exec -it <container-id> sh
- 使用VsCode插件Dev Containers
像VsCode操作本地文件一样去查看文件、修改配置。可以界面化得操作文件,不需要使用shell命令(如:ls cat echo vi等)
安装VsCode插件
- 打开VsCode
- 进入拓展界面
- 搜索"Remote"/"Docker",并安装插件(一般在最前面)
- "Docker"
- "Dev Containers"
- "Remote - ssh"
操作容器
- 点击VsCode左侧,"docker"图标
- 右键正在运行的容器,点击"Attach Visual Studio Code"
- 如果弹窗提示需要信任,点击"Got It"即可
- 此时会打开新窗口,就进入了容器内
- 点击打开文件/文件夹,直接进行操作即可
远程服务器
开发过程中,往往部署服务会在服务器上,所以需要远程到服务器上部署docker,下面服务器为ubuntu
- 点击VsCode左侧,"远程连接"图标
- 切换为"SSH Targets"
- 点击"+"创建远程连接信息,按提示填入信息
- 创建完成后生成连接选项,右键连接
- 点击VsCode左侧,"拓展"图标
- 将上述三个拓展装到服务器上,即可看到VsCode侧边栏出现容器图标
增加用户权限
- 点击VsCode左侧,"Docker"图标,发现无法连接
- 需要将登陆用户添加到docker用户组中
sudo gpasswd -a <当前登陆用户名> docker
# 例如: sudo gpasswd -a xuxiaocong docker
# 从用户组中删除: sudo gpasswd -d <当前登陆用户名> docker
- 重启服务器即可使用
sudo reboot
- 重启过后即可像在自己电脑中一样,操作docker了
使用SSH key减少输入密码
远程到服务器后,很多操作需要输入密码,使用起来不方便,可以使用SSH key减少密码输入
- 打开本机的cmd,创建SSH key
ssh-keygen
- 打开SSH目录,"C:\Users<用户名>.ssh"
- 可以看到目录下有四个文件,打开公钥"id_rsa.pub"并复制
- 登陆远程服务器
- 打开远程服务器的SSH目录,"/home/<用户名>/.ssh/authorized_keys"
- 没有.ssh目录进新建一个
- 没有authorized_keys文件就新建一个
- 将复制的本机的公钥粘贴到authorized_keys文件中
- 之后再登陆或其他操作就不需要再输入密码了