Docker 宣布 Docker Compose Watch 普遍可用,这是一个旨在提高应用程序开发效率的工具,让开发人员能够在编码时更容易保持专注。
对于传统的容器化应用程序开发,不仅需要在 Web 浏览器中使用 Alt+Tab 来切换标签页和点击刷新按钮,还需要更多的步骤。即使使用了缓存,重新构建镜像、重新创建容器和处理启动/停止等过程都会让开发者分心。Docker Compose Watch 旨在解决这一不便,专注于解决开发中常见的痛点。
Docker Compose Watch 允许开发人员将其代码更改同步到正在执行代码的容器中,实现了类似 React 或 NextJS 的实时重新加载。它提供了对同步本地文件更改的精细化控制,可以不保留为测试目的而进行的更改。它引入了 "热重载",允许在编写代码时无缝快速更新应用程序,而不会丢失应用程序的现有状态。
实现热重载的一个常见传统解决方案是通过绑定挂载在本地系统和容器之间镜像文件更改,但这需要使用一些变通方法,因为 Docker Desktop 中的绑定挂载与 Linux 上的 Docker Engine 不同。确保在 Docker Desktop 的虚拟机(VM)和本地宿主之间进行无缝高效的文件共享,同时保持权限和文件通知,是一个重大挑战。
Docker Compose Watch 可以在启动时自动构建并启动所有需要的服务,无需附加到运行中的 Compose 项目。只需一个"docker compose watch"命令,这极大简化了开发过程,让开发人员能够专注在更重要的编码上。
Maciej Pankanin 在 X( Twitter) 上说,为常见服务如 nginx 添加重启命令将非常有用,开发团队已经注意到了这一反馈。Michael Irwin 在 X 上进行了积极评价,说他 "不再需要挂载源代码"、"一切似乎更加迅捷"。Bret Fisher 在之前的 alpha 版本发布的视频中说道:
"这解决了多年来在 Mac 上一直困扰我们的性能问题"
自从在 Docker Desktop 4.18 中捆绑 Compose v2.17 的 alpha 版本发布以来,Docker Compose Watch 已经得到了大幅改进,比如通过批处理 Docker API 调用来提高速度、使用防抖机制确保重建不会太密集、添加过滤器来忽略常见代码编辑器和集成开发环境所生成的临时文件。
Docker Compose Watch is now generally available and installable standalone, bundled into Docker Desktop 4.24, and as a plugin for Docker Engine.
Docker Compose Watch 现已 普遍可用,可以独立安装,可以捆绑到 Docker Desktop 4.24 中,也可以作为 Docker Engine 的插件。
原文链接:
评论