Ubuntu下部署code-server——浏览器里的vscode

第一步:准备服务器

首先是一个服务器,考虑到目前的code-server的性价比,这个地方我们选用了阿里云的1核 1G 1M的云服务器,系统采用Ubuntu18.04,官方建议是1和2G以上的标准,因为穷所以这里我们就凑合着用。
登录服务器之后

su root

获取root权限,为什么要root权限因为后文需要监听0.0.0.0的本地地址。

第二步:下载项目

GitHub上的地址在 https://github.com/cdr/code-server ,进去之后选择releases进入到release界面之后根据服务器的版本选择下载最新的release版本,这里因为我的系统是64位,建议服务器配置64位,32位目前应该也很少见了,我选的code-server-3.1.1-linux-x86_64.tar.gz。

wget https://github.com/codercom/code-server/releases/download/1.939-vsc1.33.1/code-server-3.1.1-linux-x86_64.tar.gz

使用 wget 命令从相应的链接上下载压缩包到本地,然后解压,Ubuntu的解压方式就不必再说了,其中以下文件可以没事的话看看一下

code-server 是一个二进制文件,也就是我们待会要执行的服务。
LICENSE.txtREADME.md以及ThirdPartyNotices.txt都是自带的一些说明性的文件,不用管它

第三步:实际部署

按照官方文档的步骤,部署其实很简单,
Releases
Download a release. (Linux and OS X supported. Windows support planned.)
Unpack the downloaded release then run the included code-server script.
In your browser navigate to localhost:8080.

也就是./code-server即可,不过这样子存在几个问题:

1、只能够监听本地地址,也就是 127.0.0.1 ,从外网无法访问。我们这是架在远程服务器上的,只能本地访问,那我们不如下载个客户端直接安装,省时省力。
2、使用随机生成的密码进行登录。这个也是我刚开始最烦的,每次生成的随机密码都是几十位,如果不复制,感觉输入完密码就已经没兴趣了。对此我们做如下改正,此处参考了‘踏雪亦无痕’的教程
3、每次都要输入才能启动访问,关闭终端,就没有了。

对此我们做如下修改:

1、监听地址可以传入参数 –host 0.0.0.0 改为监听本地地址。
2、监听端口可以传入参数 –port 80 改为监听http的默认访问端口,这样从浏览器访问时只需要填写IP即可。当然这里的端口根据自己的需要填写,但如果使用阿里云的服务器的话记得在服务器管理里面修改安全组规则,添加允许授权的端口。
3、传入 PASSWORD 环境变量,来定义自定义密码。
于是,我们的启动命令就变成了:

export PASSWORD="这里填你要设置的密码" && ./code-server --host 0.0.0.0 --port 80

就ok了。进入浏览器访问服务器公网ip,然后就会发现已经成功运行啦,现在就可以随时随地改需求啦!

注意事项:

用上面的方法进行部署之后直接退出和服务器的连接是可行的,不过服务器上会始终运行一个终端,在阿里云里面通过网页上的远程连接方式连接之后如果断开连接终端是默认关掉的,这样终端中所运行的code-server服务也会随之消失,如果要使其成为后台运行的服务,需要使用 nohup 命令和命令末尾加 & 的方式来启动后台进程。关于nohup的使用方法,可以自行百度。

 export PASSWORD="你自己的密码" && nohup ./code-server --host 0.0.0.0 --port 80 &

执行nohup命令的时候,经常会出现下面这种没有写入权限的错误。

nohup: ignoring input and appending output tonohup.out’
nohup: failed to run command /etc/nginx_check.sh': Permission denied

这是可以使用Linux重定向的方法,将nohup.out重定向至一个有写入权限的路径,或者直接扔到/dev/null中,关于重定向,也可以自行百度。

nohup ./program >/dev/null 2>/dev/null &

或者

nohup ./program >/dev/null 2>&1 &

整理后的命令如下:

export PASSWORD="你自己的密码" && nohup ./code-server --host 0.0.0.0 --port 80 >/dev/null 2>&1 &

当然如果想偷懒,也可以写成
export PASSWORD=”你自己的密码” && nohup 项目路径/./code-server –host 0.0.0.0 –port 80 >/dev/null 2>&1 &
默认采用http协议连接,保密性不是很好,建议使用https.

未经允许不得转载:知白博客 » Ubuntu下部署code-server——浏览器里的vscode
分享到:
赞(0) 打赏

如果觉得文章有用就打赏一下文章作者吧

支付宝扫一扫打赏

微信扫一扫打赏