远程开发

vscode:go

远程开发,让开发环境也变得触手可及。

# 适用事件

  • branch.create
  • api_trigger
  • crontab

# 参数

# keepAliveTimeout

  • type: Number
  • required:
  • default: 600000

工作区 keepAlive 超时,单位毫秒。最大值不得超过12小时。

# 输出结果

{
    // 远程开发地址,如需在 vscode:go 任务前获取远程开发地址,可直接使用 `VSCODE_WEB_URL` 环境变量
    url,
}

# 配置样例

使用 Dockerfile 自定义开发环境,并安装 VSCode

VSCode 官方文档见:https://coder.com/docs/code-server/latest/FAQ (opens new window)

#.ide/Dockerfile
FROM node:14

# install vscode and extension
RUN curl -fsSL https://code-server.dev/install.sh | sh &&\
    code-server --install-extension redhat.vscode-yaml &&\
    code-server --install-extension orta.vscode-jest &&\
    code-server --install-extension dbaeumer.vscode-eslint &&\
    code-server --install-extension eamodio.gitlens &&\
    echo done

# 安装 zsh 并替换 sh(非必需,如有问题可去掉)
RUN apt-get update &&\
    apt install -y zsh &&\
    ln -sf /bin/zsh /bin/sh

# 安装 ssh 服务,用于支持 VSCode 客户端通过 Remote-SSH 访问开发环境
RUN apt-get install -y wget unzip openssh-server

# 指定字符集支持命令行输入中文(根据需要选择字符集)
ENV LC_ALL C.UTF-8
ENV LANG C.UTF-8
ENV LANGUAGE C.UTF-8

声明开发环境创建时机和其它准备工作

#.coding-ci.yml
(**):
  branch.create:
    - name: vscode
      services:
        - vscode
      docker:
        build: .ide/Dockerfile
      wework:
        title: 远程开发
      stages:
        - name: ready
          type: vscode:go

更多内容详见:

  • 使用技巧(快捷键、VSCode 客户端支持、数据漫游等)
  • 工作原理(开发环境回收策略、漫游策略、实现原理)