Codespaces 简介

GitHub Codespaces 是 Github 提供的云端开发环境,底层是运行在微软云端服务器上的 Docker 容器(Ubuntu 系统),自带常见开发工具。每个月官方会提供免费额度,个人轻度使用完全足够。

因为 Codespaces 处于境外高速网络环境,我们可以用它运行一个轻量代理工具 Tinyproxy,再借助 VS Code 自带的端口转发功能,把云端网络能力桥接到本地电脑。


创建 Codespace

登录 GitHub 账号后,打开 https://github.com/codespaces,点击 New codespace:

新建代码空间

选择依附的仓库和分支(通常选 main),机型选 2 核基本够用(每月免费额度有 60 核心小时,2 核可用 30 小时)。确认无误后点击 Create codespace:

选择关联仓库与 2 核机器规格

随后页面会显示正在设置。浏览器生成的实例名称通常是两个随机英文单词(如 curly-space-parakeet),记下这个名字后即可关闭网页:

Codespace 实例初始化与名称确认


使用 VS Code 连接

网页端体验受网络波动影响较大,更推荐用本地 VS Code 客户端连接。

在 VS Code 插件市场中搜索并安装 GitHub Codespaces 扩展:

在 VS Code 中安装 GitHub Codespaces 扩展

安装完成后,点击左侧边栏的远程资源管理器图标,点击登录 GitHub 账号:

在远程资源管理器中登录 GitHub 账号

授权登录后,列表中会显示刚才创建的 Codespace 实例。右键点击并选择连接(Connect to Codespace):

右键选中目标实例并连接

等待右下角进度条跑完,左下角显示已连接,就表示已成功连入云端容器。


配置 Tinyproxy 代理

在 VS Code 中按下快捷键 Ctrl + ~ 打开云端终端,安装轻量代理工具 Tinyproxy:

1
2
# 更新源并安装 tinyproxy
sudo apt update && sudo apt install -y tinyproxy

编辑配置文件 /etc/tinyproxy/tinyproxy.conf:

1
2
# 打开配置文件
sudo vim /etc/tinyproxy/tinyproxy.conf

在配置中修改两项:

  1. 找到 Port 8888,确认或修改为所需端口(默认 8888 即可)。
  2. 找到 Allow 127.0.0.1 这一行,在前面加 # 注释掉,表示允许外部连接(由于 Codespaces 处于隔离环境,只有登录了你账号的 VS Code 能访问转发端口,放开是安全的)。

保存退出后,启动代理服务:

1
2
3
4
5
# 启动 tinyproxy 服务
sudo /etc/init.d/tinyproxy start

# 查看服务运行状态
sudo /etc/init.d/tinyproxy status

端口转发与本机测试

在 VS Code 底部面板切换到“端口(Ports)”选项卡,点击“添加端口(Add Port)”,输入刚才配置的端口 8888。

此时 VS Code 会自动建立加密通道,将云端 8888 端口映射到本机的 127.0.0.1:8888。

打开本地终端进行测试:

1
2
# 测试代理是否生效并查看出口 IP
curl -x http://127.0.0.1:8888 https://api.ipify.org

测试通过后,即可在系统代理设置或浏览器插件(如 SwitchyOmega)中将 HTTP 代理指向 127.0.0.1:8888。


注意事项

  • 必须保持 VS Code 处于连接状态,代理隧道才会生效。
  • Codespaces 闲置超时后会自动关机以节省免费额度。重新连接后若代理不可用,需在云端终端重新运行一次 sudo /etc/init.d/tinyproxy start 唤醒服务。

站内搜索

没有找到内容!