Docker撰写documentation及其example use case非常适合您找出拆分不同工作环境(开发,生产等)的各种可能性。Docker撰写何时使用图像构建
web:
image: example/my_web_app:latest
links:
- db
- cache
db:
image: postgres:latest
cache:
image: redis:latest
但是,我不清楚何时使用图像而不是构建。
这是唯一可用的描述,与他们唯一的image: example/my_web_app:latest
例如云:
另一种常见的情况是运行即席或管理任务 对在撰写应用一个或多个服务。此示例 演示运行数据库备份。
自己的例子时休息使用build: .
据我所知,有超过建筑图像时开启首次容器起来的时候,因为图像已经准备建立为您提供更好的性能。但是,我可以预见许多问题:
- [开发]开发人员可能会更改Dockerfile配置(并且在推送任何更改之前需要先进行测试)。
- [开发]源代码文件将改变(但我想你可以通过共享卷容易修复)。
- [制作]你可能并不总是想要在
:latest
版本(或者你是否?)。 - [any]通过使用图像(和
:latest
标签),您无法控制您正在触摸的文件版本。但是每当你打开docker-compose up
它就会更新到最新的工作版本。
一些以前的观点可能不完全正确。随意拆除它们。
+1,因为你指出了很有趣的细节,比如你如何处理图像和'Dockerfile'同时 – zurfyx
同意改变。你提出了很好的观点。我们实际上使用swarm,ansible和Jenkins,并且具有非常复杂的设置,它们都是自动的,并且在通过构建测试时将容器滚动。我试图尽量减少我的回复范围,因为Docker和ci/cd可以非常快速地变得非常复杂。如果你有一个需要测试的容器或者你的需求很小,那么撰写就很棒了。目前我们在生产中管理超过300个容器,并且构建系统稍微复杂一些,如上所述。 @zurfyx下午如果你想私下聊天。 –
@ GHETTO.CHiLD我很欣赏那些精通Docker的人,但我不知道如何与您联系。随意使用我的个人资料中的任何社交平台 – zurfyx