记录通过 docker-compose 部署云服务器上的 code-server
文章目录
- 记录通过 docker-compose 部署云服务器上的 code-server
- 前言
- 一、准备工作
- 二、云服务器镜像选择
- 三、部署
前言
心血来潮想要在自己的云服务器上部署一套 code-server,后续就可以在公交上写代码了
一、准备工作
首先需要一个云服务器,我这边选择的是阿里云的轻量应用服务器,相对于完整的云服务器轻量应用服务器比较便宜,同时自己使用也差不多了。
二、云服务器镜像选择
我这里选的是 Docker 镜像,因为我除了 code-server 还希望将自己平时写的小服务放到云端,用 Docker 的容器化可以比较好的分割工作区。
三、部署
初始化镜像之后发现没有安装 docker-compose,考虑到后续可能有多个 Docker 容器,用 docker-compose 处理容器配置看着比较靠谱。k8s(kubenetes) 对我来说太重了,docker-compose 也比较方便。yum install -y docker-compose
安装一个
准备一个 docker-compose.yml 文件
$ vi docker-compose.yml
按 i,进入 Insert Mode
version: "3"
services:
code-server:
image: codercom/code-server:latest
container_name: code-server
environment:
- TZ=Asia/Shanghai #时区
- PASSWORD=password #可选,改成你自己的密码 PASSWORD/HASHED_PASSWORD 至少要配置一个
- HASHED_PASSWORD= #可选,非明文保存的密码,因为上面 Password 的密码会以配置文件形式保存在服务器内,所以 code-server 提供了一个非明文形式的密码。具体可以通过 echo -n "password" | npx argon2-cli -e 这个命令生成,这里就不细讲了
- SUDO_PASSWORD=password #可选,如果用这里的密码会以 sudo 的方式登陆
- SUDO_PASSWORD_HASH= #可选,同上
- PROXY_DOMAIN=code-server.my.domain #可选,服务器绑定的域名
- DEFAULT_WORKSPACE=/home/coder/project #可选,默认工作区
volumes:
- ./config:/config
- ./code-server:/home/coder/project
ports:
- 8080:8080
restart: unless-stopped
Esc 退回 :wq 保存
$ cat docker-compose.yml
检查一下文件有没有保存成功,成功应该会看到刚刚写到 docker-compose.yml 的内容
$ docker-compose up -d
通过 docker-compose 配置 Docker
到这里其实服务端的配置就差不多了ports: - 8080:8080
把 8080 端口映射到了宿主机。用的阿里云的服务,还要在服务器配置的防火墙把对应的端口打开。
现在浏览器访问服务器ip:8080
输入密码,应该就可以在浏览器上看到 coder 的界面了。