在哪里保留依赖(大文件或目录结构)以与Docker / Docker-Compose一起使用?

时间:2016-02-10 12:09:46

标签: git docker docker-compose

作为开发环境的Docker设置的一部分,我使用Docker-Compose管理以下内容:

  • 基于database
  • 的MySQL实例(docker-compose.yaml文件中名为mysql:5.7
  • 基于manager的两个Tomcat实例(称为runtimetomcat:7.0)。这两个依赖于要存在的数据库,通过docker-compose提供的link可以正常工作。

作为容器构建的一部分,我将几个SQL脚本映射到数据库容器中,这些脚本在创建时会加载到数据库中。

对于Tomcat实例,我需要将一个单独的WAR文件部署到每个容器中:manager.warmanagerruntime.warruntime。每个WAR文件的大小约为120 MB。

为了简单起见,我已将WAR文件添加到用于管理docker-compose项目的Git项目中。除了docker-compose.yaml文件和WAR文件之外,项目还包含SQL数据和一些我映射到相应容器的shell脚本。

目前我最大的问题是保留WAR文件的位置,因为它们会显着增加Git仓库的大小。由于我希望随着时间的推移更新WAR文件(它们是在这个项目之外创建/版本化的),我将不得不用更新的副本不时地替换这些文件,这将进一步增加回购的大小,这将使其变得困难让人们只是克隆回购。

如何处理这样的事情?我知道在Git仓库中保留这些二进制文件通常是一种不好的做法,但我也希望将文件保持在项目附近,因此使用它的人不必开始搜索/下载文件,然后才能用这个。

Docker或Docker-Compose中是否有一项功能可以帮助我管理这些“依赖项”?

1 个答案:

答案 0 :(得分:1)

  

目前我最大的问题是保留WAR文件的位置,因为它们会大幅增加Git仓库的大小

使用this tool

enter image description here