发布于 

群晖docker部署code-server

  1. 为了更好地使用,或许需要调试用的设备连接SSH。

    1. 在设置中打开SSH功能(默认端口号为22)
    2. 在windows terminal内 输入 SSH {user name}@{IP}:22
    3. 选择yes,并输入密码(不会明文在控制台显示)
    4. 控制台的前缀改变,变为{username}@{设备名},即为连接成功。通用的linux指令可以进行操作,sudo指令可获取管理员权限
  2. 下载code-server映像

官方接口的链接似乎已经失效。可以自行下载后上传至群晖。
``

  1. 通过SSH/群晖docker-GUI来指定端口和环境变量等

    1. 端口 8080:8080 TDP (容器默认端口为8080,本地端口只要不冲突都可以用)
    2. 打开自动重启
    3. 环境变量(不配置PUID和PGID,通过直接修改文件权限虽然不安全但是能用)
      PUID=1000
      PGID=1000
      TZ=Asia/Shanghai
      PASSWORD={password}
      *如何查找PUID和PGID:连接SSH,cat /etc/passwd查看对应用户行的两个编号
    4. 文件映射
      必须要映射的只有config。找个地方分配一个文件夹就好了。
      {your dir} : /home/coder/.config
      工作区文件夹也可以随便映射。
      {your dir} : /home/project
  2. 访问对应IP并输入密码即可登入
    第一次打开网页会出现一个密码输入框,输入即可。
    密码:初始密码可以用你喜欢的方法从映射的.config文件夹获取
    SSH命令行的一种方法

     `docker exec -it code-server bash`
     `vi ~/.config/code-server/config.yaml`
    

    群晖访问、下载、打开

     ...
    
  3. 其它的可能出现的问题:

    1. 只能读取文件,不能修改:

      与群晖的文件读写权限设置有关。
      一个粗暴但是不安全的方法:连接群晖SSH,直接修改project文件夹的权限
      `chmod 777 -R {Your dir's name}`
      
    2. 无法安装vscode扩展

      好像就是不能直接从扩展商店安装(对我只有中文插件成功了)
      可以从扩展商店访问对应扩展的页面并且获取对应版本的链接,下载`.vsix`文件并手动安装
      
  4. 关于Cpp环境配置:
    依次执行(SSH连接)
    sudo apt-get update
    sudo apt-get install build-essential gdb
    此时可以安装C插件和code-runner快乐编码了

  5. 关于python等环境配置

//切换 root 用户
sudo su

//更新源
sed -i "s/archive.ubuntu.com/mirrors.aliyun.com/g" /etc/apt/sources.list && apt update

//安装 python
apt install -y python

//安装 nodejs,自行调整版本
curl -sL https://deb.nodesource.com/setup_14.x | sudo bash
apt install -y nodejs

//安装 jdk
apt install -y openjdk-8-jdk

最好选用19年以前,最新版本的python插件并不兼容

`

  1. 可以选择更改docker权限
chmod a+rw /run/docker.sock # 或者 chmod a+rw /var/run/docker.sock

即可在docker的terminal内使用sudo指令