基于code-server打造低成本云编程环境

589 阅读1分钟

vscode丰富的插件生态给了我非常好的用户体验,目前已经是我的主力ide了。
code-server是vscode官方推出的服务器版本,可以在服务器部署,并通过浏览器访问。
因为公司最近正在推行半公司办公半居家办公的模式,为了避免背电脑通勤,我尝试打造基于 code-server 的云编程环境。

首先,可以在 registry.hub.docker.com/r/codercom/… 找到最新的code-server镜像。

封装我们自己的版本

编写dockerfile:

FROM codercom/code-server:3.11.1
RUN sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak \
&& echo 'deb http://mirrors.cloud.aliyuncs.com/debian/ buster main contrib non-free' >> /home/coder/sources.list \
&& echo 'deb http://mirrors.cloud.aliyuncs.com/debian/ buster-updates main contrib non-free' >> /home/coder/sources.list \
&& echo 'deb http://mirrors.cloud.aliyuncs.com/debian/ buster-backports main contrib non-free' >> /home/coder/sources.list \
&& echo 'deb http://mirrors.cloud.aliyuncs.com/debian-security buster/updates main contrib non-free' >> /home/coder/sources.list \
&& sudo mv /home/coder/sources.list /etc/apt/ \
RUN sudo apt update && sudo apt upgrade -y && sudo apt-get install -y fonts-powerline python3 python3-pip vim \
&& sudo apt clean

执行构建

docker build -t okvscode -f dockerfile --no-cache .

推送镜像库

这里我使用阿里云的镜像库,如何开通请查阅阿里云官方文档。
下文中使用的repo为一个公开repo,如果想复用可以直接使用。

  • 登录 docker login -u "邮箱地址" registry.cn-beijing.aliyuncs.com
  • 打tag docker tag 本地镜像的id registry.cn-beijing.aliyuncs.com/zjkbj/okvscode:0.1
  • 推送docker push registry.cn-beijing.aliyuncs.com/zjkbj/okvscode:0.1

运行

docker run -dit --cap-add SYS_PTRACE --name myvscode -p 0.0.0.0:8100:8080 \
  -u "$(id -u):$(id -g)" \
  -e PASSWORD=设置的登录密码 \
  okvscode:0.1-2

致谢