通常我在本地(在我自己的机器上)开发,并通过映射驱动器,ftp,github等推送到任何需要的东西。我已经用一个共享/镜像文件夹对vagrant/virtualbox(但同样在本地)做了一些工作。
我现在的情况是,这里的每个人都可以访问自己的开发框(网络上的 VM)。我相信,我看到有些人直接通过 SSH 在 Vim 中工作,但我还没有。所以我留下了一个问题:(更像是前端的人)解决这个问题的最佳方式是什么?
我听说过从我的工作站做SSH安装...如果这是一件可行的事情。我很好奇每个人对这种环境的看法是什么,以及(也许)任何最佳实践。提示,链接和阅读也非常受欢迎和赞赏...任何指向好方向都会很棒。
谢谢。
最佳答案来自要为虚拟网络 VM 利用哪些虚拟资源。如果只需要存储空间,请共享 VM 的驱动器,并在本地装载它们,将它们视为本地故事的结尾。如果要在远程计算机上运行所有处理,并从瘦客户端进行连接,则有几个选项,但它们都采用相同的形式。 连接到计算机,编辑远程计算机上的文件。 根据您的操作系统,您将有不同的可用选项。
- 如果远程机器
没有安装图形客户端,你要么坚持在本地挂载远程共享(你可以使用任何你想要的编辑器)或ssh到远程机器,并使用命令行编辑器(vim,nano,emacs)。
如果安装了图形客户端,则有更多选择:
使用任何可视化查看器在服务器中远程(适用于Windows的mstsc,vnc是一个选项),然后使用您选择的任何远程安装的编辑器。
远程使用 ssh -X,然后运行远程安装的编辑器。 假设您在本地有一个 X-Server(如果您正在运行 linux,那么您已经在运行),应用程序的 GUI 部分将在 ssh 隧道的客户端上运行,并且该过程将在服务器上运行。 这可能是最好的选择。
所以:
- 确保远程服务器具有桌面客户端软件(gtk,kde,gnome,几乎任何Windows操作系统等)
- 在该服务器上安装您选择的 GUI 编辑器
-
ssh -X
到该服务器 - 安装Sublime Text,Geany或您选择的编辑器
- 运行
subl
、geany
或其他 以启动应用程序。
SSH 挂载确实允许您使用虚拟机上的所有文件,就像它们存储在本地计算机中一样,从而允许您编辑和更新文件,而无需在每次执行更改时手动复制它们。但是,您会遇到减速带,因为每次都必须将更改的文件同步/复制到远程计算机,这需要几秒钟。查看DigitalOcean的这篇文章,他们解释了如何使SSH挂载工作。
您拥有的更好的选择(恕我直言)是在本地计算机中使用 IDE,该 IDE 允许您在保存后或通过手动操作将更改推送到服务器。这将允许您使用本地资源(本地 Web 服务器)更快地开发,因为无需通过网络将文件复制到远程 VM;并且还允许您在需要时在该远程 VM 上进行测试,当您准备好在该环境中进行测试时,可以通过上传文件来在该远程 VM 上进行测试。
PS:将可视化应用程序或环境从远程计算机导出到本地计算机可能会很慢(取决于您的网络和运行计算机的 VM 主机负载)。如果你仍然喜欢这种方法,你也可以安装一些东西来访问那个虚拟机,通过更标准和轻量级的东西,如RDP for GNU/Linux(xrdp)。