我们拥有一个用Angular编写的应用程序的存储库。 它需要一个带有nginx的docker容器来托管。 nodejs需要一个nodejs的docker容器,所以我们的应用程序将被拆分为2个容器,这些容器将被链接。
所以要编写2个dockerfiles(每个图像一个),我们必须在我们的仓库中拆分文件夹,如:
根
Angular:包含nginx的dockerfile
NodeJS:包含nodejs的dockerfile
但问题是他们都需要package.json。 (Angular for devdependencies和NodeJS for dependencies)。
您应用程序的仓库中哪个是最好的结构?
答案 0 :(得分:0)
如果您愿意,Nginx和Nodejs容器可以在Docker Compose中共享卷。您可以使用volumes_from参数。它将从另一个服务或容器挂载所有卷,可选择指定只读访问(ro)或读写(rw)。 https://docs.docker.com/compose/compose-file/
volumes_from:
- service_name
- container_name
- service_name:rw
在您的情况下,package.json可以在您的Nodejs容器中,但是Nginx容器也可以使用此参数访问它。