# 通过 SSH 连接云端 IDE 工作空间

Cloud Studio 工作空间(预置环境)支持 SSH 和 SCP,您可以通过 SSH 连接到工作空间,包括通过命令行终端 SSH 连接工作空间,通过 VSCode 的 Remote - SSH (opens new window) 插件连接工作空间等,也可以通过 SCP 命令上传或下载文件。

# 1. 获取 SSH 命令

“运行中”的工作空间,可以看到 SSH 登录的小图标,点击图标,可以获取 SSH 登录命令。如下图所示:

SSH 连接图标 获取 SSH 连接窗口

说明:只有预置环境的工作空间才能看到 SSH 连接小图标。

# 2. 通过 SSH 命令登录工作空间

您可以通过常见 SSH 登录工具登录到工作空间,比如 Mac 上的 iTerm2,Windows 上的 SecureCRT 等。

# 2.1 通过 iTerm2 登录工作空间

将获取到的 SSH 命令粘贴到 iTerm2 直接执行即可,如下图:

使用 iTerms2 执行 SSH 命令

# 2.2 通过 SecureCRT 登录工作空间

从前端获取 SSH 登录命令后,可以从命令里获取 Hostname 和 Username ,参考下图设置 SecureCRT 连接选项:

SecureCRT SSH 配置

注意:首次连接,需要创建密钥对。在上图选择“PublicKey”,然后点击“Properties...”,进行创建,点击“Create Identify File...”,如下图:

创建密钥对

按 SecureCRT 的指引进行操作,创建成功后,可以看到已创建的密钥对的一些信息:

完成创建密钥对

SecureCRT 连接成功后,效果如下图:

SecureCRT 连接成功

# 3. 通过 VSCode Remote SSH 插件连接工作空间

操作步骤:

  1. 给 VSCode 安装 Remote SSH 插件:

Remote - SSH 插件

  1. 在 Remote SSH 插件中增加一个连接:

Remote - SSH 插件 添加一个连接

粘贴获取到的 SSH 命令,然后回车:

Remote - SSH 插件 添加一个连接

  1. 点击远程主机名右边的按钮,即可连接到工作空间:

Remote - SSH 插件 连接到远端Host

# 4. 通过 SCP 上传或下载文件

您可以通过 SCP 和工作空间上传或下载文件,SCP 命令格式请参考:scp使用手册 (opens new window)

工作空间的SSH连接命令格式是:ssh ${TARGET},常用的 SCP 命令是:

  • 上传:scp file ${TARGET}:/path/to/file
  • 下载:scp ${TARGET}:/path/to/file file

# 使用示例

  • 上传文件到 Web IDE 工作空间

假设本地当前目录有个文件:index.html,希望上传到工作空间的 /workspace/web 目录(将下面命令中的 ${TARGET} 替换对应工作空间连接地址):

scp index.html ${TARGET}:/workspace/web/index.html
  • 下载 Web IDE 工作空间的文件到本地

假设要把工作空间的 /workspace/web/index.js 下载到本地当前目录:

scp ${TARGET}:/workspace/web/index.js ./index.js