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