gpt4 book ai didi

docker - 最佳实践 - 在一个 repo 中有多个 docker-compose 文件

转载 作者:行者123 更新时间:2023-12-02 18:13:28 27 4
gpt4 key购买 nike

我目前正在从事一个由以下组件组成的全栈网络项目:

  • 数据库(MariaDB)
  • 前端(角度)
  • 后端(NodeJS)

每个组件都应该可以通过 docker 部署。为此,我为它们每个都有一个 Dockerfile。我还在存储库根目录中定义了一个 docker-compose 以将它们全部部署在一起。

# current repo structure
|frontend/
|src/
|docker/
-Dockerfile
-docker-compose.yml
|backend/
|src/
|docker/
-Dockerfile
-docker-compose.yml
|database/
|src/
|docker/
-Dockerfile
-docker-compose.yml
-docker-compose.yml

您认为这是好的做法吗?我不确定,因为我认为我目前的结构有点困惑。你在类似的项目中是如何处理的?

最佳答案

docker-compose 旨在在一个地方编排项目的多个组件:docker-compose 文件。

在您的情况下,正如 m303945 所说,您不需要多个 docker-compose 文件。实际上,您的主要 docker-compose.yml 应该调用每个组件的 Dockerfile。该文件可能包含如下内容:

services:

frontend:
build:
context: frontend
dockerfile: docker/Dockerfile

backend:
build:
context: backend
dockerfile: docker/Dockerfile

database:
build:
context: database
dockerfile: docker/Dockerfile

关于docker - 最佳实践 - 在一个 repo 中有多个 docker-compose 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60440856/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com