花五分钟在NAS上搭了个Code-Server,结果成了我出场率最高的开发环境
前言不知道你们有没有这种感觉——有时候下班回家想改两行代码结果打开笔记本跑了几下风扇开始狂转机器烫得能煎蛋。最气的是项目一大本地编译一次好几分钟过去了效率根本没保障。还有一个更烦的白天在公司写了一半的东西回家打开另一台电脑环境又得从头配一遍。插件、快捷键、路径全都不一样调试半天发现是环境问题不是代码问题。又或者出差的时候手边只有一台 iPad 或者性能一般的旧设备想临时改几行代码根本没法操作总不能为了临时改个东西再装一套环境。这些问题折腾了我挺久直到把 Code-Server 跑在了家里的群晖 NAS 上。简单说就是VS Code 跑在 NAS 的 Docker 里浏览器直接访问跟在本地上写代码体验几乎一样。NAS 的算力比笔记本强多了编译运行都在服务器上完成浏览器只负责显示操作起来顺手很多。配合 cpolar 穿透之后在外面也能连上这个开发环境不管用什么设备都一样用。整篇说下具体怎么搭的不讲虚的。1 关于【Code Server】简单粗暴地说Code-Server就是把大名鼎鼎的VS CodeVisual Studio Code微软出品的宇宙第一编辑器没有之一直接搬到了你的服务器上然后通过浏览器访问你没听错这意味着VS Code体验不变你熟悉的界面、快捷键、插件、终端一切都原汁原味地呈现在你的浏览器里。服务器算力加持你的代码运行在强大的服务器上本地电脑再也不用担心性能瓶颈告别卡顿、风扇狂转的烦恼随时随地任何设备只要有浏览器和网络无论是你的MacBook、Windows PC、Linux本甚至是iPad、安卓平板甚至是性能一般的旧电脑都能瞬间变成强大的开发工作站开发环境一致你的开发环境统一在服务器上再也不用担心“在我电脑上能跑在你电脑上就报错”的尴尬了。告别SSHVim的痛苦直接在服务器上用VS Code编辑代码调试、版本控制、文件管理一切都变得可视化、高效化。是不是听着就觉得“香”这简直就是为我们这些追求效率、又不想被硬件束缚的开发者量身定制的2 群晖nas部署安装【Code Server】好了废话少说直接上手我们今天就用群晖NAS来部署Code-Server。跟着我一步步走保证你轻松搞定首先我们确认已经安装了docker也就是container Manager然后打开文件夹在docker文件夹里面点击新增我们来创建一个名为code-server的文件夹。接着点击控制面板点击计划任务我们来创建任务计划点击新增选择触发的任务点击用户定义的脚本、任务名称自定义用户账号选root下面的已启动不打钩点击任务设置在运行命令这里粘贴这行脚本dockerrun-d\--namecode-server\-ePUID1026\-ePGID101\-eTZAsia/Shanghai\-ePASSWORD88888888\-p28443:8443\-v/volume1/docker/code-server:/config\--restartunless-stopped\linuxserver/code-server:latest在password密码这里修改一下端口号这里按照自己情况修改我这里不变点击确定会跳出一个提醒我们点击确定然后输入NAS密码。然后我们选中这个脚本点击运行。打开docker找到容器我们看一下容器是否创建完成确认后我们打开新的浏览器输入群晖的ip地址加上28443端口就能打开code-server的登录界面啦3 简单使用code-server好啦这就是code-server的主页啦和vs code差不多吧默认是没有中文的我们点这里在搜索栏搜索cn找到这个中文插件点击下载。下载完成后我们打开命令面板输入display后点击这行命令会显示安装的语言列表我们点击刚才下载的插件稍等一会刷新后就是中文版的啦好啦现在我们的云端VS Code已经跑起来了像你平时使用VS code一样光说不练假把式我们来实际操作一下首先我在左边的文件管理器里右键新建一个文件叫index.html。然后把我早就准备好的一段超酷炫的个人主页代码粘贴进来这里面有HTML、CSS还有一点点JavaScript可以让我们的网页动起来代码放进来了怎么看效果呢我们去左边的插件市场搜索‘Live Server’点击安装。装好后回到我们的index.html文件看到右下角那个‘Go Live’按钮了吗点它家人们请看一个带有打字机效果的个人主页就出现了这个页面所有的计算和渲染其实都是在我们的NAS上完成的浏览器只负责显示4 介绍以及群晖安装cpolar想象一下你现在用iPad连着Code-Server一边改代码另一边分屏实时看着网页效果变化这生产力是不是瞬间拉满了现在我们已经在本地群晖nas上部署好了code-server局域网内是可以随便使用的前面我们说到放假或者出差在外人不在同一个局域网怎么实现随时随地敲代码呢别担心~我们还有cpolar内网穿透它能给你的内网服务生成一个公网地址不需要公网IP不需要复杂的路由器配置只要简单几步就可以拥有一个专属的、安全的公网域名来访问你的Code-Server而且它还支持HTTPS让你的代码传输更安全继续跟我一起往下配置吧下面是安装cpolar步骤cpolar 提供了群晖安装的套件点击下面Cpolar群晖套件下载地址下载相应版本的群晖Cpolar套件如果找不到对应的型号可以选择相近版本型号套件。打开群晖套件中心点击右上角的手动安装按钮。选择我们本地下载好的cpolar套件安装包,然后点击下一步点击同意按钮,然后点击下一步最后点击完成即可。安装完成后在外部浏览器我们通过群晖的局域网ip地址加9200端口访问Cpolar的Web管理界面然后输入Cpolar邮箱账号与密码进行登录登录后一切的操作在管理界面完成.5 创建Code-Server的公网地址登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道隧道名称可自定义注意不要与已有的隧道名称重复协议http本地地址28443 (只使用http端口即可)端口类型因为我想长期使用所以我选择二级子域名如果你只是为了测试或者非长期使用也可以选择随机域名这个是免费的但是24小时后域名会变化需要再次复制大家按照自己需求来选择就行地区选择China top接着我们来cpolar官网去保留一个二级子域名这样防止被别人占用。登录cpolar官网点击预留 选择保留二级子域名然后复制保留好的子域名回到配置界面粘贴到域名这里后点击创建创建成功后打开左侧在线隧道列表可以看到刚刚通过创建隧道 生成了两条固定的二级子域名公网地址。接下来就可以在任意设备随时随地使用这个地址在浏览器中登录访问。这个地址就是你的code-server在互联网上的‘新家’现在无论你在咖啡馆、在公司还是在外出时只要有网打开这个地址就能随时随地敲代码啦结尾用 NAS 跑 Code-Server 这件事用下来发现有几个实际的好处编译跑在服务器上本地设备再烂都能流畅开发环境配置一次后续换什么设备都是同一套iPad 配合蓝牙键盘临时改代码完全够用。cpolar 在这套方案里解决的是最后一公里——NAS 藏在家庭网络里外网根本访问不到穿透之后才能真正做到随时随地。如果你手里有群晖 NAS硬盘空着也是空着跑一套 Code-Server 其实花不了多少时间但每次需要临时写代码的时候会发现方便很多。