具有应用程序的Docker容器 – 数据库是否在容器中

我想谈谈使用docker容器作为应用程序。

我想创build应用程序将使用数据库(也许另一个东西)。 我很困惑如何正确地做到这一点。

我可以用两种方法做到这一点:

  1. 使用docker-compose分别创build像数据库和我的应用程序的容器
  2. 在我的应用程序容器上安装数据库并作为单个容器使用

哪种方法更好?

  • 当我select第一个 – 有人可能没有docker组成,并必须在泊坞窗撰写文件中设置应用程序。
  • 当我select第二个 – 我可以创build单容器,独立的应用程序。

不build议单容器方法。 检查docker文档以了解如何在容器中启动多个服务 。

通常build议您通过每个容器使用一个服务来分隔关注的区域。 该服务可能会分成多个进程(例如,Apache Web服务器启动多个工作进程)。 可以有多个进程,但为了从Docker中获得最大的好处,避免一个容器负责整个应用程序的多个方面。

正如你所看到的,启动多个服务是可行的,但不被推荐,并引入了很多复杂性。

当我select第一个 – 有人可能没有docker组成,并必须在泊坞窗撰写文件中设置应用程序。

Docker撰写只是一个帮手。 所有可以用写作完成的事情都可以通过一系列docker命令来完成。