在 Mac 上使用 Docker 而不是 native/homebrew?

Use Docker rather than native/homebrew on Mac?

我目前通过 Homebrew 在我的 mac 运行 上安装了一个 LAMP 堆栈,老实说几乎没有人用过。

最近我一直在使用 AngularJS 和基于服务的应用程序,所以通常 运行 通过基于 gulp / nodeJS 的网络服务器访问网站。

我完全以前端为导向,所以除了奇怪的 Drupal 站点和 mysql 之外,我很少使用与后端相关的技术。

我有兴趣学习更多 NodeJS,甚至可能是一些 Ruby,纯粹是为了更多地了解编程 - 并不是真的让它成为我的新工作描述。

所以昨晚阅读了一些关于 NodeJS 的文章,我阅读了很多关于 Docker 的内容,并在今天早上安装了工具包和图形用户界面。看起来很整洁!

我的问题是:通过 Docker 只 运行 我需要的一切对我来说会更好吗?例如,我可以只安装 mysql 容器,并在需要数据库时打开它,并在需要时启动一个 drupal 实例并将其连接到我的数据库实例?

我知道 Mac 上的 运行ning Docker 速度较慢,因为它没有本机 Linux 内核和 运行s 通过VM - 但考虑到我的需求,这应该没问题吧?

我喜欢仅部署容器的想法,因此可能也想在我的托管环境(云中的 VM)上安装 Docker。

跟进问题:我工作的 90% 的网站都是基于 AngularJS 的前端,这些前端与我们的后端人员单独构建的 API 对话。为这些站点中的每一个设置 Docker 是不是太过分了,或者我宁愿将它们全部 运行 放在一个,或者完全绕过 docker (正如我提到的,我通常只需从我的 Gulp 的网络服务器中加载它们)

非常感谢。我意识到这是一个 n00b 询问有关大技术的问题,但我正在努力围绕它并希望在此过程中有所成长。

部署 Docker 容器的兴趣在于 可重复性
您可以轻松重现:

  • 需要安装大量库的复杂开发环境(您不想直接污染您的主机)
  • 或执行环境,对于给定的工具运行(如网络服务器)

如果您不太可能重复设置(对于 dev 或 exec),docker 容器几乎没有价值。
但是,如果您想跟踪环境的确切规格(通过其 Docker 文件), 不仅会在您的工作站上部署它,还会在其他地方部署它, 那么 docker 无疑是一个不错的选择。