用于链接dockerfiles的Docker选项

我很想做可重复使用的dockerfiles。 我没有看到反正做这个,因为没有variables,没有包含正确的选项? 任何人都有一个很好的select(除了dyanmically创build/修改dockerfile和build立时间)?

因为有1服务(例如:1的Web应用程序,1数据库,1caching等),并build立在同一个图像,所以我可以在一个容器中运行一个完整的应用程序,因此将能够resuse生产环境dockerfiles (1个可能的用例在单个服务器上运行多个function分支)。

是的,我知道我可以单独build立每个容器,并链接它们,但似乎总是杀死设置和pipe理(因为在某些情况下可能需要6个或更多的容器为单个function分支)。

如果你不想创build多个图像,你总是可以创build一个怪物的形象,其中包含的一切。 在我看来,这是一种代码味道,但这是可能的。 如果你永远不会分开跨服务器的服务,这可能甚至是有效的。

如果要在不同的上下文中使用同一种图像,则可以使用环境variables对行为进行参数化,并仍使用相同的图像。 例如,有一个期望YOUR_VARIABLE的bash脚本,并使用-e选项启动容器(请参阅文档 )。 例如

 docker run -e "YOUR_VARIABLE=value" --rm ubuntu env 

有无花果这样的工具可以使容器的数量变得容易。 您仍然可以单独部署单独的系统,但是它们会一起使用并作为一个整体来使用。

您可以使用标签来命名泊坞窗图像。 这使链接dockerfile变得容易一些:

假设一个目录. 与模块的子目录module1 ,…

build_all.sh:

 docker build -t "module1" module1 docker build -t "module1" module2 

如果这是用于构build的顺序,那么可以在module2/Dockerfile中使用

 FROM module1 

不完美,因为为什么module2需要提前知道module1,但它的工作原理。