我现在vscode远程服务器,并且在服务器中创建一个容器,我现在想在我这个电脑上的vs code直接去编辑远程服务器中容器中的代码,怎么做
1. 确保前提条件
-
本地安装 VS Code 和必要扩展:
- 确保本地安装了 Visual Studio Code。
- 安装 Remote - SSH 和 Dev Containers 扩展:
- 打开 VS Code,进入扩展市场 (快捷键:
Ctrl+Shift+X
),搜索并安装这两个扩展。
- 打开 VS Code,进入扩展市场 (快捷键:
-
远程服务器配置好 SSH:
- 确保你可以通过 SSH 无密码登录到远程服务器。
- 测试命令:
ssh username@remote-server
-
远程服务器已安装 Docker:
- 确保 Docker 服务正在运行。
- 测试命令:
docker ps
2. 连接远程服务器
- 使用 Remote - SSH:
- 在 VS Code 中按
Ctrl+Shift+P
,打开命令面板。 - 输入
Remote-SSH: Connect to Host
,选择远程服务器。 - 如果没有配置过,点击 Configure SSH Hosts,添加类似以下内容到你的
~/.ssh/config
文件中:Host remote-server HostName your.server.ip User your-username IdentityFile ~/.ssh/id_rsa
- 选择
remote-server
,连接到远程服务器。
- 在 VS Code 中按
3. 打开 Dev Containers
- 在远程服务器的 VS Code 界面,按
Ctrl+Shift+P
调出命令面板。 - 输入并选择 Dev Containers: Attach to Running Container。
- 会显示远程服务器上正在运行的所有 Docker 容器,选择目标容器。
编辑容器中的代码
- 连接成功后,VS Code 会加载容器内的文件系统。
- 你可以直接在本地 VS Code 中查看和编辑容器内的代码,就像本地开发一样。
3. Dev Containers 的增强功能
如果你希望通过 devcontainer.json
文件来优化开发环境,可以参考以下内容:
示例 devcontainer.json
配置:
{
"image": "mcr.microsoft.com/devcontainers/typescript-node",
"forwardPorts": [3000],
"postCreateCommand": "npm install",
"customizations": {
"vscode": {
"extensions": ["dbaeumer.vscode-eslint", "streetsidesoftware.code-spell-checker"]
}
}
}
详细参数参考: 开始在 Visual Studio Code 中 Dev Containers _Vscode中文网
Developing inside a Container using Visual Studio Code Remote Development
Running Visual Studio Code on Linux
使用方法:
- 在你的项目根目录下创建
.devcontainer
文件夹。 - 在其中创建
devcontainer.json
文件。 - 在 VS Code 中选择 Dev Containers: Reopen in Container 来加载开发环境。