|
|
1
1
你可以拥有 multiple Compose files 它们协同工作,其中您有一些基本文件,然后是扩展基本文件中定义的其他文件。
无需额外设置,Compose会寻找
您还可以使用此技术将实际的数据库凭据和端口发布从主文件移至特定于部署的配置中。对于需要在生产中运行已知的Docker镜像但在开发中构建它的设置,以及用主机目录覆盖容器内容的设置,使用它也是很常见的。
如果你想让文件命名为其他名称,你可以,但你需要始终如一地提供
从哲学上讲,应用程序的数据需要持久化
在某处
。对于应用程序容器,一个好的做法是让它们完全无状态(它们不会挂载
IME主动希望数据库丢失数据有点不寻常。如果使用种子数据直接创建数据库映像会更有趣,但标准映像的构建方式会使这变得困难。在测试环境中,我仍然可以看到它的存在。 实际上,构建一个在Docker中运行但使用外部数据库的应用程序是可能的,也是合理的。也许你在云环境中运行,你的云提供商有一个稍微昂贵的托管数据库服务,例如提供自动快照和故障转移;您可以将生产应用程序配置为使用此托管数据库,而在容器中根本不保留任何数据。 |