对 Django 和 Channels 使用 Docker 有什么好处?

What is the benefit to use Docker for Django and Channels?

我正在使用 Channels 开发 Django 网络应用程序。当我关注这个 tutorial 时,需要安装 Docker.

我正在 windows 10 HOME 上开发 WSL,所以安装 Docker 真的很痛苦。

我刚刚发现 Docker,对此我有点困惑,我知道它是一种有助于稍后在虚拟主机上部署网络应用程序的工具。但我不确定。

你能给我你的建议吗?你能告诉我对我的项目使用 Docker 是否真的很重要吗?

如果我在 Ubuntu OS 上发展,我的痛苦会减少吗?

谢谢,

以下是我自己的考虑,不故作面面俱到Docker点评

搬到 Docker 会给你以下优势:

  • 轻松部署 - 您无需提供有关如何安装应用程序、依赖项和 link 它们的手册。只有如何安装 Docker(顺便说一句 Windows 很痛:)
  • 隔离 - 您的服务获得隔离网络并且不打扰主机
  • 轻松升级 - 只需推送新映像即可
  • 分解 - 使用 docker-compose 和其他工具,您将能够将您的应用程序拆分为服务并单独维护它们
  • 扩展 - 通过适当的设计,像 k8s 这样的工具将允许您通过添加服务的副本来轻松扩展应用程序

另一方面,在 Windows Docker 上会产生额外的开销,不像 Linux 它是在 Linux 内核之上实现的,你还需要 Win10 Professional享受 Docker 而不是 docker 工具箱。

此外 Windows 在自动化包管理方面不是很好,并且在许多情况下无法像 apt-get install whatever 那样简单地为 Windows 安装软件,因此您又失去了另一个 [=43] =] 好处 - 通过 Docker 文件轻松准备系统。

如果你打算只留在 Windows,根据我自己的经验,我可能 建议搬到 Docker,因为我个人发现没有 VirtualBox/Ubuntu.

很难使用