从多阶段构建转换为单阶段

时间:2018-07-21 02:03:30

标签: docker jenkins dockerfile

由于我只能在群集上使用docker 1.xxx而不是17x,因此我需要一些帮助,以了解如何将此多阶段构建转换为适用于较早docker版本的有效构建。

有人可以帮我吗?

public class ParentObject() {
    @JsonIgnoreProperties({ "subAttributeA.subAttributeB.subAttributeC" })
    private ChildObject attribute;
}

当前,它使我在“ FROM节点:9-alpine as deps”上出现错误

1 个答案:

答案 0 :(得分:3)

FROM node:9-alpine as deps”表示您正在定义一个中间图像,您可以从COPY COPY --from=deps来创建图像。

只有一张图片意味着您不再需要COPY --from,也不需要“ as deps”,因为所有事情都发生在同一张图片中(结果会更大)

所以:

FROM node:9-alpine

ENV NODE_ENV=development

RUN apk update && apk upgrade && \
    apk add --no-cache bash

WORKDIR /app
COPY . .
RUN npm set progress=false  \
    && npm config set depth 0 \
    && npm install --only=production \
    && cp -R node_modules/ ./prod_node_modules \
    && npm install

RUN rm -r ./prod_node_modules \
  && npm run lint

RUN apk add --update tzdata

ENV PORT=3000
ENV NODE_ENV=production

WORKDIR /root/
RUN cp -r /app .
RUN cp -r /app/prod_node_modules ./node_modules

EXPOSE 3000
CMD ["node", "index.js"]

这里只有一个 FROM