我的目标是实现严格的开发到生产环境一致性,以消除部署摩擦。此外,我希望我的工作流程与大厂在为 Linux 服务器开发应用程序时实际采用的工程实践和基础架构范式保持一致。
我正在评估以下几种常用方法来复制大厂设置:
-
本地容器化:例如,WSL2 + Docker 。
-
本地虚拟化:运行专用的无头 Linux 虚拟机。
-
远程开发:使用 IDE (例如 VS Code Remote 或 JetBrains Gateway )通过 SSH 连接到专用的无头 Linux 机器或云实例。
目前,我的日常主力机是一台 Windows 11 笔记本电脑。我目前可用于搭建本地 Linux 节点的备用硬件配置为:Intel i7-6700 处理器、8GB 内存、238GB 固态硬盘和 GTX 1070 显卡。我的主要目标是确保架构的正确性,只要成本不太高可以不受现有硬件限制。如果升级基础设施(例如购置标准的开发工作站或配置经济高效的云实例( VPS ))能更好地符合现代行业标准,我也可以参考。
我不是寻求个人主观推荐,而是希望了解大厂真实的开发环境,以及个人如何才能最好地复制大厂的开发环境。具体来说:
- 行业现状:在实际企业环境中,如何切实保持开发环境与生产环境的一致性?行业范式是否正在向远程、集中式的无头开发服务器转变,还是在开发人员工作站上进行本地容器化仍然是行业现状?
- 基础设施权衡:对于一个希望为这种企业工作流程建立肌肉记忆的人来说,买更好的本地硬件(用于本地 Docker/VM )与采用云原生方法(为纯粹的无头 SSH 开发配置远程云实例)之间,架构上的权衡是什么?