部署一个code-server

这里记录一下部署code-server的过程。

先说一下背景,想试试code-server,开玩笑。更多的是真的需要了。公司的开发环境真是太差了,配的笔记本分分钟卡死给你看。git pull git commit git push三个操作有时都要用几分钟,真的是没脾气呀。如果开启了watch,那就更慢了。反正就是一句话,开发环境坑死人。还有的小伙伴,用自己的电脑根本就没有办法打包,执行npm run build,然后就一直卡住,根本等不到结果,最多的时候等了两小时,没有任何变化!!

为了把自己从这种非人的开发环境中解脱出来,我想到了code-server,刚好后端小伙伴手上有测试服务器,可以用来部署。

下面开始介绍了

  1. 到官网下载code-server https://github.com/cdr/code-server/releases code-server-3.10.0-linux-amd64.tar.gz
  2. 上传到服务器,解压tar xvf code-server-3.10.0-linux-amd64.tar.gz
  3. 执行进入code-server的目录,执行./code-server --port 9988

这样就开启了

打开浏览器http://xx.xx.xx.xx:9988/就好了

公司服务器端口只开了默认的几个,需要提申请单开墙:(,折腾了几天

在这个过程中我遇到一件事情,这里也记录一下。我输入了正确的密码,然后还是会跳回到登录页。后来查明原因,是因为code-server前端用fetch来发起请求,然后fetch默认没有带上cookie。这就导致,登录成功后,把cookie写到了前端,但是后续的请求还是没有cookie带过去,然后后端就一直认为没有登录。fetch时用credentials: 'include’就好了。我是怎么做的呢,我找到了vscode.js,在文件的最上面添加了下面的代码

if (window.fetch) {
	var originFetch = window.fetch;
	window.fetch = function() {
		var args = [].concat.apply([], arguments);
		if (args[1]) {
			args[1].credentials = 'include';
		} else {
			args[1] = { credentials: 'include' };
		}
		return originFetch.apply(null, args);
	}
}

这样就好了。

还有一个奇怪的现象也要说一下。在适用code-server后,我觉得挺好的,开发环境随处可用。我就在我的阿里云服务器上也不上了一个。在这个过程中我就没有与到上面说的这个问题。我没来得及去查原因,估计后面也不会去查了。

code-server好顺利的用起来,还是需要用https来访问的,当然了http的也能凑合用。

因为公司的网络完全是不通的,一些插件需要自己去下载,然后再安装。我只安装了vetur,够用了。

如果用nginx做反向代理,不要忘记配置对web socket的支持,具体操作可以网上搜一下。

我还遇见了vue项目的问题,在服务器上运行npm run serve时,需要修改vue.config.js中的devSever.host

有帮助请点赞:)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值