You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将SSH代理转发至VS Code开发容器以通过SSH访问GitHub

VS Code 开发容器 SSH 代理转发配置方案(Windows 环境)

前置验证(先确认本地配置正常)

  • 确认 Windows 本地 ssh-agent 服务已设置为开机自启且正常运行:
    # 管理员权限执行PowerShell命令
    Set-Service ssh-agent -StartupType Automatic
    Start-Service ssh-agent
    
  • 确认 GitHub 密钥已添加到本地代理:
    ssh-add ~/.ssh/github
    # 验证本地SSH连接正常
    ssh -T git@github.com
    

开发容器配置修改

编辑项目根目录下 .devcontainer/devcontainer.json 文件,添加以下配置:

  • 显式开启 SSH 代理转发功能:
    "forwardAgent": true
    
    注:VS Code 开发容器的 SSH 代理转发不依赖本地 .ssh/config 中的 ForwardAgent 配置,必须在此处显式开启才会生效,开启后 VS Code 会自动将本地 ssh-agent 挂载到容器内并同步 SSH_AUTH_SOCK 环境变量。
  • 确保容器内已安装 openssh-client 依赖,可通过 postCreateCommand 自动安装:
    // Debian/Ubuntu 系容器使用
    "postCreateCommand": "apt update && apt install -y openssh-client"
    
    // Alpine 系容器使用
    // "postCreateCommand": "apk add openssh-client"
    
  • 可选配置:自动将所有 GitHub HTTPS 请求替换为 SSH 协议,无需修改现有 Terraform 模块地址:
    "postCreateCommand": "git config --global url.\"git@github.com:\".insteadOf \"https://github.com/\""
    

生效验证

修改配置后重建开发容器,在容器终端执行以下命令验证转发是否成功:

ssh -T git@github.com

返回你的 GitHub 用户名即为配置成功,此时 Terraform 可正常拉取 SSH 格式的 GitHub 内部模块。

内容的提问来源于stack exchange,提问作者BuZz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 09:54:02