2

跑在浏览器的 vscode | gitpod

 1 year ago
source link: https://www.jansora.com/notebook/107579
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

源代码地址:https://github.com/gitpod-io/openvscode-server

下载合适的版本
https://github.com/gitpod-io/openvscode-server/releases

docker 安装

基于 Docker 安装, 更多安装方式详见 https://github.com/cdr/code-server/blob/v3.8.0/doc/install.md

docker pull codercom/code-server:latest

# This will start a code-server container and expose it at http://127.0.0.1:8080.
# It will also mount your current directory into the container as `/home/coder/project`
# and forward your UID/GID so that all file system operations occur as your user outside
# the container.
#
# Your $HOME/.config is mounted at $HOME/.config within the container to ensure you can
# easily access/modify your code-server config in $HOME/.config/code-server/config.json
# outside the container.
mkdir -p ~/.config
docker run -it --name code-server -p 50191:8080 \
  -v "$HOME/.config:/home/coder/.config" \
  -v "/storage/g/app/coder:/home/coder/project" \
  -e PASSWORD=password \
  -u "$(id -u):$(id -g)" \
  codercom/code-server:latest

打开 http://127.0.0.1:8080 就可看到了. 密码: password

Ubuntu 20.04, 参考 https://github.com/cdr/code-server/blob/v3.8.0/doc/install.md

curl -fOL https://github.com/cdr/code-server/releases/download/v3.8.0/code-server_3.8.0_amd64.deb
sudo dpkg -i code-server_3.8.0_amd64.deb
sudo systemctl enable --now code-server@$USER

命令已集成到 systemd 中. 通过 systemd 管理

root@jansora:~/storage/app/coder# systemctl status [email protected][email protected] - code-server
     Loaded: loaded (/lib/systemd/system/[email protected]; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2020-12-25 22:48:38 CST; 43s ago
   Main PID: 140805 (node)
      Tasks: 22 (limit: 8829)
     Memory: 48.5M
     CGroup: /system.slice/system-code\x2dserver.slice/[email protected]
             ├─140805 /usr/lib/code-server/lib/node /usr/lib/code-server
             └─140866 /usr/lib/code-server/lib/node /usr/lib/code-server

Dec 25 22:48:38 jansora systemd[1]: Starting code-server...
Dec 25 22:48:38 jansora systemd[1]: Started code-server.
Dec 25 22:48:38 jansora code-server[140805]: [2020-12-25T14:48:38.765Z] info  Wrote default config file to ~/.config/code-server/config.yaml
Dec 25 22:48:39 jansora code-server[140805]: [2020-12-25T14:48:39.109Z] info  code-server 3.8.0 c4610f7829701aadb045d450013b84491c30580d
Dec 25 22:48:39 jansora code-server[140805]: [2020-12-25T14:48:39.110Z] info  Using user-data-dir ~/.local/share/code-server
Dec 25 22:48:39 jansora code-server[140805]: [2020-12-25T14:48:39.124Z] info  Using config file ~/.config/code-server/config.yaml
Dec 25 22:48:39 jansora code-server[140805]: [2020-12-25T14:48:39.124Z] info  HTTP server listening on http://127.0.0.1:8080
Dec 25 22:48:39 jansora code-server[140805]: [2020-12-25T14:48:39.124Z] info    - Authentication is enabled
Dec 25 22:48:39 jansora code-server[140805]: [2020-12-25T14:48:39.124Z] info      - Using password from ~/.config/code-server/config.yaml
Dec 25 22:48:39 jansora code-server[140805]: [2020-12-25T14:48:39.124Z] info    - Not serving HTTPS

MAC 安装

brew install code-server

==> Caveats
==> code-server
The launchd service runs on http://127.0.0.1:8080. Logs are located at /usr/local/var/log/code-server.log.

To start code-server:
  brew services start code-server
Or, if you don't want/need a background service you can just run:
  /usr/local/opt/code-server/bin/code-server
==> mongodb-community
To have launchd start mongodb/brew/mongodb-community now and restart at login:
  brew services start mongodb/brew/mongodb-community
Or, if you don't want/need a background service you can just run:
  mongod --config /usr/local/etc/mongod.conf

Brew release has been installed.

Run with:
  code-server

配置文件位于 ~/.config/code-server/config.yaml

bind-addr: 127.0.0.1:8080
auth: password
password: mewkmdasosafuio3422 # This is randomly generated for each config.yaml
cert: false

集成到 nginx 并启用 https

请自行修改 端口号, https 证书, 自定义域名

vs.conf

upstream vs {
    server 127.0.0.1:8080;
}


server {
    listen 443 ssl;
    server_name sub.example.com;
    ssl_ciphers    ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols    TLSv1 TLSv1.1 TLSv1.2;
    ssl_certificate     /etc/nginx/certs/lets-encrypt/sub.example.com.cer;
    ssl_certificate_key /etc/nginx/certs/lets-encrypt/sub.example.com.key;

    location / {
      proxy_pass http://vs;
      proxy_set_header Host $host;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection upgrade;
      proxy_set_header Accept-Encoding gzip;
    }
}

server {
    listen 80;
    server_name sub.example.com;
    return https://sub.example.com$request_uri ;
}

https://github.com/cdr/code-server/blob/v3.8.0/doc/FAQ.md#docker-in-code-server-container


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK