gpt4 book ai didi

node.js - 两个Git存储库,一个Docker镜像

转载 作者:行者123 更新时间:2023-12-02 21:33:43 25 4
gpt4 key购买 nike

我对Docker还是比较陌生。我有两个git repos。一个是Next.js应用程序,另一个是nodejs应用程序。我需要创建一个docker容器,但是在构建时,需要构建next.js代码并将构建文件夹移至节点应用程序,然后再创建镜像。不知道这是否可能。
我不确定这是否是最好的选择。最终目标是将Docker容器推送到AWS ECS。
在后台,next.js是服务器呈现的react框架。因此,在QA和PROD中,节点应用程序提供内容。

最佳答案

通过发出RUN指令,已执行的命令将提交到当前镜像顶部的新层中。 Docker的概念是使您的收敛步骤处于源代码控制之下,因此可以在镜像历史记录的任何时间点创建容器。在这种情况下,使用一组RUN指令会将每个步骤提交为一个单独的层。

WORKDIR /project
RUN git clone https://github.com/foo/next-js.git
RUN git clone https://github.com/baz/nodejs.git

WORKDIR /project/next-js
RUN npm run build
RUN cp ./build ../nodejs/
您可以改为将上述内容合并到bash脚本中,并绕过Docker的分层机制。
COPY ./setup.sh /
RUN chmod u+x /setup.sh
RUN /setup.sh
但是,这样做会打乱使用Docker的初衷,除非出于某种原因,您需要确保容器以一层的形式接收一组指令。

关于node.js - 两个Git存储库,一个Docker镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63939752/

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