我目前正在进行一个完全堆栈的web项目,该项目由以下组件组成:
(MariaDB)
每个组件都应该通过码头部署。为此,我为每个用户提供了一个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你觉得这是很好的练习吗?我不确定,因为我认为我目前的结构有点混乱。在类似的项目中,你是如何处理的?
发布于 2020-02-28 09:35:32
docker-compose被设计成在一个地方编排一个项目的多个组件:docker文件。
在您的情况下,正如m303945所说,您不需要多个坞-组合文件。实际上,主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发布于 2020-02-27 20:03:57
您不需要多个对接-合成文件。如果您想一起运行特定的应用程序,例如,只有数据库和后端只运行这个命令。
docker-compose -f docker-compose-file.yml up -d database backend 哪个数据库和后端是坞-组合文件中的服务名称。
https://stackoverflow.com/questions/60440856
复制相似问题