APP下载 微博 微信

Hao4K影音


[经验心得] 教你用Nas构建WebIDE编辑器系列第二篇

[复制链接]

发表于 2019年12月06日 17:37 9772 0 来源:媒体存储> 经验心得 回帖奖励 |正序浏览 |

Kim_Huang 帖主

2019-12-6 17:37

教你用nas构建WebIDE编辑器系列第二篇

上一篇介绍了如何实用C9来构建webIDE远程集成环境编辑器,虽然C9具有的优势非常明显配置简单集成也相对全面,如果你的存储空间很敏感,又或者你已经习惯了VScode编辑器的界面和操作方式,那么code-server就是不错的选择(然而在快捷键上与桌面版还是存在区别的)。
搭建webIDE
首先还是通过从docker来下载镜像文件,最后运行容器来实现模块化话的webIDE既可以随时关闭应用,也相对Nas本身来说也相对安全些。至于个人搭建的webIDE更多这是则是建立编辑代码的操作环境的作用,如果硬件配置和安全环境允许的情况下也可以直接将几个容器进行关联,然后对外发布程序。多人协助开发那么还是建议使用公共代码服务器,一来对于协助方面更加方便,二来代码的编辑和检测方面也更加规范些。
这里与群晖Nas作为例子说明,其他Nas系统也相类似。
首先打开docker套件,选择注册表在搜索表单输入“code-server”并找到liunxserver/code-server那么为什么选择这个镜像而不是选择code-server发布的镜像呢?因为这个镜像的系统操作起来比code-server发布的镜像少了些莫名奇妙的bug。直接选择最新版本就好了,如果是code-server发布的镜像就不能选择最新版本否则你安装不了python的环境,什么原因,目前还不清楚也不必在此太费时间,但是很多人已经入坑成功后才给出的告诫。

老规矩,下载完成后在“映像”菜单中找到镜像文件,双击进入编辑,再找到“高级设置”

高级设置里面我们要设置一个桌面访问的快捷方式,带预先定义可用的宿主机端口号,后期便于直接从桌面进行访问。

在“卷”映射宿主机路径对于容器内路径,便于保存和调整容器内应用webIDE产生的代码文件。装载路径这边设置为“/config/workspace”,宿主机这边自定义设置路径

端口设置选卡内设定端口号为之前在快捷方式中指定的端口号,保持端口号一致即可

最后在“环境”选卡中新增设置(左上角有个+号就是增加配置项),访问密码和root密码,就完成了全部的高级设置,点击应用后,再下一步直到完成,启动镜像文件。PASSWORD对应设置登录密码,SUDO_PASSWORD对应设置root密码。

一切就绪后,可以在地址栏中或者从Nas桌面生成的图标中登录到code-server的webIDE界面中,之前设置的登录密码即可登录到编辑器页面。但是必须要注意的是这是的编辑环境是如何功能都不具备,包括一些原本ubuntu系统应该携带基本命令都是不具备,都需要进行额外安装才能使用这些命令,所以我说它是即麻烦也自由,那么先运行这段命令:“sudo apt-get update && sudo apt-get install -y subversion maven git curl wget npm” 记得输入之前的root密码呀。到更新安装完毕基本上已经具备了一些基本的命令可以使用了。

在左上角的启动终端界面(也可以使用快捷键),输入“sudo apt-get update && sudo apt-get install -y subversion maven git curl wget npm”完成一些基本的工具安装。这里我要说的是如果没有提前配置好国内镜像(这里不再扩展篇幅太大了,理解万岁),速度快不到哪去,耐心等待吧。



接下来这端是给并不是想用编辑器来开发的朋友说明如何安装MD插件以便于Markdown写博客使用(其实还有更好的工具,容后再说)。我使用的是Instan Markdown你可以选择你喜欢插件安装就好,其他的安装方式也是如此,这里还算是简单的。

看到了编辑器界面是否有种似曾相识的感觉呢?如果你平常使用的就是VScode编辑器,那么如何使用这个webIDE自然不成问题,那么这里当然还是有许多的使用坑等着诸位去淌过后才能发现啦。我并没有对这款应用进行非常深度的使用,一来它的Bug确实有些多,另外很多解决方式都在github的项目处已经有了解决方案,可以去看看别人提出了的一些问题和解决办法来应对你所遇到的问题。二来虽然这里的进入账户并非root,在使用composer的时候也非常方便,但是我始终觉得没有C9和公共的webIDE那么华丽,也可能是使用习惯吧?有了插件的code-server还是非常强大的。

遇到问题
这里也顺便说明一些遇到但是也尚未解决的问题,如果你知道如何解决这些问题欢迎留言指正,首先是终端工具不可复制只能粘贴的问题,另外一个是编码时候自动补全的时候出现漏字符的情况还是没找到原因,最后有朋友问过客户端又可以安装中文包,都是插件为何web版无法安装中文包,这个问题我考虑可能语言包只是适配桌面应用并非适配web的版本的所导致的,因为也没打算使用中文界面就没去深究了。
补充说明
再顺带补充一下PUID和PGID,本来是不想说明了,因为也没看到起到什么特别作用,还是担心一些小伙伴不明白,这两项设置据镜像文档来说是可以解决一些奇奇怪怪的权限问题,但是依然还是出现了各种权限问题(根本就没解决嘛)。
怎么找到这两项,首先得明白你当前的账户是哪个分组的,用户名是什么?再往下看,打开"控制面板"找到"终端机"再打开“启动SSH功能”这些服务。用完记得关上,之前的文章中一再强调过这个权限不能随便开。有些小伙伴还是开了忘记关,最后导致的出现的一系列问题就不大好办了。

启动了SSH服务以后,那么就使用ssh工具或者跟我一样使用git的终端工具直接登录远程终端,账号密码就是你Nas的用户名和密码,用户名放在@符号的前面,第一次登录会提示是否保存ssh信息在本机中。填入yes就可以了。输入密码时候是不显示光标的,不是你输入不了字符。

一般能从ssh登录的都是管理员组,那么就是administrators分组,进入远程终端以后可以使用"id"命令查看当前用户的id编号等信息。我们这里取用的是uid和groups里面的管理组ID编号。文档是这么提示的,那么我这里是1026和101。到此为止这两项的参数就已经获取完毕填入即可。
总结
webIDE还有很多路要走,并不是很完善。但是也足够我们日常的一些常规编码应用了,如果说要桌面客户端相比的话,还是略逊几筹的。如果说是应急使用的话,那么似乎也已经完全可以超过了那个临界点,有几个项目已经完全可以基于这种个人的web编辑器去进行开发,然后再提交到git仓库中不是非常规范的多人开发也马马虎虎能解决问题,沟通还是常用通讯工具就可以了,码字效率都差不多,同样有代码补全,高亮还有代码测试这些基本功能,版本对比也一样不少。
抛开服务器的资源消耗,其实你个人或者家庭的Nas服务器不就是几个人在用,能消耗得了多少,黑群晖提供了高配置的服务器,这些消耗就根本不再话下。这样也避免了在其他电脑或者是其他的终端设备上反复安装开发环境的尴尬局面,而已也能为随时加班提前秃顶提供了有力的条件。
如果你是文学工作者当我没说,码字对你来说简直家常便饭。那么有一个不错的远程编辑器而且不用安装随时发布还要什么自行车呢?
未经授权,不得转载
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

返回列表 本版积分规则



绑定微信 + 关注公众号,第一时间获得消息通知!
:
新手玩家
:
介绍未填写

主题

帖子

积分24

图文推荐

  • 家庭NAS+HTPC组建及注意事项(一)(内网穿

    原创篇一:家庭NAS+HTPC组建及注意事项(一)(内

  • 搭建私有云—华芸AS6404T NAS+华硕 AC68U体

    帮朋友搭建私有云—华芸AS6404T NAS+华硕 AC68U体

  • 小量的影视、音频存储方案之我见

    最近,一块使用了近十年的4T移动硬盘挂了(曾被摔

  • 科普:什么是硬盘MTBF?那MTTF、MTTD、MTTR

    买固态硬盘,我们会比较关注颗粒寿命,机械硬盘虽

  • 入了极空间,从黑群晖到极空间谈谈区别

    之前用过黑群晖,现在改了极空间 1、为什么从

  • 机械硬盘该怎么选?教你最全机械硬盘选购指

    机械硬盘该怎么选?教你最全机械硬盘选购指南

  • 极空间挂载阿里云、115、百度、夸克等20个

    理论上使用如下教实现程极空间可以挂载阿里云网盘

  • 红米AC2100刷Padavan固件超全详细教程

    刷机全过程图解 准备工作这部分,网上教程几乎都

  • NAS都有哪些品牌?带你了解几大NAS名牌介绍

    NAS都有哪些品牌?带你了解几大NAS名牌介绍 前

  • 群辉加USB3.0千兆网卡成功,教程分享

    具体安装替换参考此贴https://www.hao4k.cn/threa

  • Hao4K影音app客户端下载