该篇首发自 VMCloud,涉及视频、图片,请点击 该链接 进行查看
你以为是一篇水文,其实是一篇技术文,当我思考如何把我这些年的路表达出来的时候,发现其实还真的是水文,不管怎么样,我还是希望写一些能落地的干货。
——By StatLee
从入职互联网公司到现在,整好四年了,我正式接触虚拟化是零九年,花了三年,终于实习工作的鞭打下驶入了虚拟化赛道,在虚拟化赛道期间我又前前后后做了十几个项目,终于在两年积累下驶入了IaaS,并在业内朋友的支持下加入了第一家互联网公司,结合五年经验,在这家互联网公司落地了VMCloud的神兽计划(点击直达介绍),虚拟化跟IaaS也算在那时就结束了。
接着,从第二家互联网公司入职后,我开始学习互联网化下的云形态究竟是怎么样的,一艘号称Top1的C端产品大船是如何在暴风雨中的大海中完成掉头的,从IaaS到PaaS再到SaaS,从客户到商务,从商务到架构师,从架构师到售后,从售后再到我们跟研发,我越来越发现,一个IT从业者,亦或者是定位自己是无界工程师,至少要在能力三象限能够master两个,另外一个也至少要有熟练级别。
ITPro/ITDev/ITPM,其实分别是三项的代表,Pro相当于组装工人,Dev相当于零件制作,PM代表编排流程;在组装工人(即PRO)这块,我个人做了这么多项目,能力较有自信;而编排流程,本来不是我强项,不过由于一五年学习了高级项目工程师的全套课程(相当于PMP)及参与了考试,所以基本上能够根据九大领域来完成一个完整流程;所以,最弱项在于Dev,也是所有组装工人最不擅长的,以前我沉迷于伪代码,对于零件本身知之甚少,而这几年的磨练,对于OS方面的知识已初具成效,如果PRO与PM的能力要发挥出来,那就得真枪实战的具备一个语言工具,而本系列就是来记录DEV方面的一些傻事儿。
当然,说到这里我们的最终目的还是希望构建一个适合开发PRO/PM 相关系统的开发环境。
-
首先我们可以借助公有云的能力,快速生成一台VM来作为开发机使用,称之为Dev01,由于是第一篇,这里是从底层开始构建,所以一开始的CI/CD 或是利用docker的架构并不会存在,并安装VSCode Insiders(为什么安装Insiders,为什么使用公网环境,后面会说)。
-
在快速生成一台App01,作为远程调试环境,并创建我们的第一个App,为了方便这里采用Django2.x+Python3环境,如何搭建这个环境网上有大量教程,这里就不再累述:
-
-
OK,现在我们打开Dev01,打开安装好的VSCode,在插件处输入”remote de”并安装Remote Development,没错,我们要用上他软在五月份发布的远程开发功能,这个功能可以省去同步代码,在应用环境上安装IDE的尴尬(特别是MacOS环境下),目前只在insiders版有,所以我们安装了insiders vscode,来体验下宇宙第一IDE对于Dev初学者究竟友好程度如何:
-
安装完成后vscode主界面上会出现“Remote SSH”,这里就要求加载一个config文件,我们可以直接以以下格式定义config文件,然后作为路径写进去:
Host XXXXX(可解析的主机名或IP地址)
-
完成后即可连接,由于我们没有配置免密码(可采用公钥或指定密码方式连接则不需要输入密码),所以在vscode的终端里会出现要输入密码的提示,若不输入,右下角的连接就会一直confirming,所以一定要注意,不要误会是出问题了:
-
输入密码后,连接开始,然而有了个小插曲……我就发现了Remote Development故障……(提交给Issus后老外搞定了),然后发现国外友人也有相同问题(https://github.com/microsoft/vscode-remote-release/issues/545):
-
500错误结束后(我相信应该是Chuxel上去重启了下服务,hhh),remote develop终于work了,由于选择remote develop后vscode是会去连接远程主机并下载vscode server需要外网网络,所以这里也是为什么一开始的app01采用带外网的公有云VM的原因所在:
-
现在就可以正常的遍历及打开远程开发文件了:
-
现在我们后台起下服务看看django是否正常运行及远程开发写过去的文件是否同步:
-
构建到此,基本算完成基础环境搭建,在使用远程开发这个特性时,可能因为是预览版,选择远程主机后至少会跳三次终端,而每次都需要在终端内输入密码,这点比较烦人,不过我们可以参考ssh_config文件中的语法指定密钥登陆更加安全且免密登陆(关于密钥生成及生效具体可参考这里):
User root(账户名)
HostName XXXX(相当于别名)
(同步了)
Host XX
User root
HostName XXXX
IdentityFile ~/statlee
(VMCloud.com.cn 正在维修中)
P.S:腾讯云2019年校招开始,有兴趣的同学可以留言啦!