Docker项目结构与子模块
我在我的项目中使用微服务。 每个微服务都在它自己的文件夹中,并且是自己的git仓库。
所有服务都在单独的docker容器中。 所以总的项目结构如下所示:
project_root/ microservice1_folder -> Dockerfile, .git, files ... microservice2_folder -> Dockerfile, .git, files ... microservice3_folder -> Dockerfile, .git, files ... docker-compose.yml
问题是, docker-compose.yml
不在任何回购。 没有回购我可以git clone
并把所有的服务与docker-compose up -d
。
有人可能会build议使用子模块,但我看不出将其整合到我的工作stream程中的方法。
使用当前的设置,我将每个微服务文件夹挂载到docker,这样我就可以进行更改,提交等等。
我如何使用子模块?
project_root
将需要成为一个git回购。 你会然后使用
git submodule add {REPO_NAME} {PATH_TO_REPO}
对于每个子模块,这些子模块又将在project_root
创build一个.gitmodules
文件。
当你克隆project_root
,你需要调用
git submodule update --init
这将拉下你的子模块的来源。