Skip to main content
Version: Next

code-server

code-server 是一个 浏览器版本的 VS Code,它被用于 源码仓库 在线 IDE 等场景。code-server 是Web 版 VS Code,后端运行在服务器中,开发者基于浏览器运行 IDE。

ui

准备

在参阅本文档使用 code-server 时,需要确保如下几点:

  • 应用是基于 Websoft9 安装的

  • 应用的用途符合 MIT 开源许可协议

  • 应用具备访问条件:配置域名服务器安全组开启网外端口

入门指南

初始化

Websoft9 控制台安装 code-server 后,通过 "我的应用" 查看应用详情,在 "访问" 标签页中获取登录信息。

  1. 使用本地浏览器访问后,进入登录页面 code-server 登录界面

  2. 输入密码,成功登录到 code-server 后台
    code-server 后台

  3. 在 code-server 界面上打开 workspace 文件夹
    code-server 打开项目目录

  4. 打开 Terminal,查看系统环境 code-server 打开Terminal

  5. 参考下一节安装所需的开发环境

安装环境

code-sever 默认并没有安装 Python, Node, Java 等环境。需要 sudo su 到管理员账号后开始安装

密码为 code-server 控制台登录密码

Node.js

# 安装 Node,yarn
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo npm install --global yarn

# 删除正在运行的 npm run
ps aux
kill -9

Python

# 安装环境
sudo apt update
sudo apt install python3-pip

Java

apt update
apt install openjdk-8-jre
java -version

Python 开发范例

下面以 Python 开发为范例,介绍如何使用 code-server:

  1. 登录 code-server,新建一个文件夹和文件,文件命名为:myfile.py,并拷贝下面的 Python 程序实例代码。

    #!/usr/bin/env python2
    #!/usr/bin/env python3
    #coding: utf-8

    import os, io, sys

    print("hello world")

  2. 在【窗口的终端栏】中执行 python myfile.py 命令,运行 Python 程序

  3. 查看正确的输出结果

预览应用

通过 code-server 容器的 Terminal 以开发者模式构建应用后,如何发布外网访问呢?

有两个方案:

  • 推荐:使用 Websoft9 控制台的【网关】为预览端口做一个代理,这样不需要绑定端口到宿主机
  • docker-compose.yml 绑定容器端口到宿主机,构建时指定此端口。
    例如:npm run start -- --host 0.0.0.0 --port 3002

多开发者

单个 code-server 应用不支持多用户开发协同工作的场景。

那么如何才能支持多开发者协作使用 code-server 呢?

其实,非常简单,只需要通过 Websoft9 控制台安装多个 code-server 多个应用。

配置选项

  • sudo(✅):密码与控制台密码相同
  • 代码编译构建(✅)

管理维护

故障

文件权限不足?

如果上传到宿主机的文件,code-server 容器没有访问权限,则需要修正它们。

Terminal 安装组件时权限不足?

sudo su 切换到 root 账号

无法复制命令到 Terminal?

ctrl+V

git push 时与远程待拉取冲突?

问题描述: git push 时,由于有待 pull 的代码,导致冲突
解决方案: git pull --rebase origin main