容器化应用的构建与监控全解析
1. Node.js 应用的 Docker 构建
在构建应用程序的 Docker 镜像时,多阶段构建是一种非常有用的技术。以 Node.js 应用为例,其构建过程与 Java 或 .NET Core 应用有所不同。
Node.js 应用使用 JavaScript 这种解释型语言,无需编译步骤。但为了优化依赖加载,仍然需要使用多阶段 Dockerfile。以下是一个示例 Dockerfile:
FROM diamol/node AS builder
WORKDIR /src
COPY src/package.json .
RUN npm install
# app
FROM diamol/node
EXPOSE 80
CMD ["node", "server.js"]
WORKDIR /app
COPY --from=builder /src/node_modules/ /app/node_modules/
COPY src/ .
这个 Dockerfile 分为两个阶段:
- 构建阶段(builder) :使用 diamol/node 作为基础镜像,将 package.json 复制到容器中,然后运行 npm install 下载依赖项。
- 应用阶段 :同样使用 diamol/node 作为基础镜像,暴露 HTTP 端口 80,指
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



