我有一个NestJS项目,有很多应用程序,结构如下:
my-project:
-- apps;
--- app-one
---- src
---- tsconfig.app.json
--- app-two
---- src
---- tsconfig.app.json
-- libs
-- package.json
-- etc...
我在一个项目中有两个应用程序:app-one
和app-two
,如何使用docker部署app-one
或app-two
。当我有一个应用程序,我知道如何做到这一点,我将创建Dockerfile
在package.json
目录和构建/运行,但如何做到这一点与嵌套的应用程序?
谢谢你的帮助
2条答案
按热度按时间nimxete21#
你可以在根目录下有多个不同文件名的Dockerfile。
对于Dockerfiles,您只需要运行自定义脚本来构建指定的应用程序
Dockerfile.app-one
package.json
nest-cli.json
然后,在CI/CD中的构建/部署任务中指定文件名
.gitlab-ci.yml
如果您需要更多信息,请阅读有关monorepo architecture in NestJS的文档
3yhwsihp2#
所有应用程序都可以使用一个Dockerfile。
然后docker build命令看起来像这样: