公司的开发环境是一个本地一个远程虚拟机,虚拟机中可以访问外网,所以一般在虚拟机中开发。
开发完成的前端代码需要在本机的设备上才能运行,本机和远程之间不能互通,不知道什么原理,子网掩码没学好- -。
但是两个机器可以互通的地方就是 ftp 了,,所以我们一般把远程虚拟机写好的代码通过 ftp 传到本地来。
有好的解决方案么?之前想到的是本机的设备挂载 ftp 来解决,但是有点麻烦,,,
不知道我有没理解错。
你的根本问题是否:你本地机不能上外网,所以你需要借助虚拟机的网络环境来开发
如果是,了解下内网穿透这类工具,可以让你本机借助虚拟机来上外网,如:FRP
这样是否能解决你问题
本机和虚拟机网络不互通,frp 也得两边都能连上才行呀
不是跑在本地的虚拟机,是远程的 windows 虚拟机,跑在公司内部服务器中的
FTP 能通那网络肯定是通的。不是什么网络原理,你应该查看防火墙规则,开放的端口,协议等(如果你有权限的话)
对网络不是特别懂,我以为只要能远程上了,至少网络是通的
frp 确实需要网络连通,也需要服务端能开放特定的端口给客户机,如果前两个不满足就不能走这条路了
看不到,普通开发一名- -、所以想有没有曲线救国之路,不然每次 ftp 拷贝代码太麻烦了
恩啊,,开发起来太恼火
两边分别是什么系统呢?
既然是虚拟机,内网环境应该不错,直接挂载确实是选项之一。
懒得折腾的话,也可以用 IDE/编辑器 上的 FTP 插件来实现保存自动 upload 之类的功能,例如:
https://packagecontrol.io/packages/SFTP
https://packagecontrol.io/packages/FTPSync
即使可以通过伪装绕过防火墙,打通了 frp,也最好不要。
既然会 “多此一举” 的这样开发,说明楼主公司的 IT 对安全是非常在意的(甚至可能是保密部门),你这样破坏规则,实在是不好。
你的意思是你公司有个远程的 Windows 服务器,你想让在服务器上写的代码直接推送到本地?为什么我觉得一般都是在本地写好代码再推到服务器呢。你们没有自己的 git 服务器吗。
远程的不是 windows 服务器,只是一个虚拟机。公司走安防项目的,要求所有代码在虚拟机中开发,设备都在本机连着的,所以只有虚拟机的代码拷贝到本地,然后再设备中运行
挂载很方便吧
vm 的话,是有个 CLI 中是有个命令,可以直接上传下载文件
磁盘映射
听着和前东家的工作方式类似,本地远程连虚拟桌面开发,当时我是在虚拟桌面开启了 iis,然后映射到一个文件夹下,每次下载把文件放到那,然后浏览器访问下载
不懂网络基础你咋写的代码。。
防火墙如果限制的不太严格,可可以试试开个高位端口,或者伪装成可放行的进程。不过赞同楼上说的,这么严格的情况下还是最好不要这么干。可以跟你们 IT 说一下换成 samba 或者 nfs 等方便点的协议。
看了帖子,
楼主的工作应该是为某个硬件设备编写 JS 代码,
而楼主的公司要求所有开发工作都在远程 Windows 虚拟机里完成,
但远程虚拟机并不能直接连接真实的硬件设备,
于是楼主通过 ftp 获取代码到本地电脑,然后本地电脑连接硬件设备,让硬件设备运行 JS 代码。
用 vscode 或者 webstorm 之类的软件,使用一个 ftp 插件,勾选本地保存自动上传远程服务器的选项,就可以实现本机和远程的代码实时同步了
大佬一语中的
麻烦的不是代码推送到 ftp,是到了 ftp 还得拷贝到本地的设备里面去。可能设备挂载 ftp 这个办法了吧,,,但是我们 ftp 有个蛋疼的问题,,,只准上传不准删除,,,
我的方案,代码是在本地的编辑器里写的。请仔细再看一遍理解工作流程
远程不是服务器,远程是开发环境。没有所谓的服务器,代码运行在本机连接的一个设备上
问公司其他人 /主管 怎么处理的,不要自己想方案