首页 > 解决方案 > AWS CodePipeline 环境变量未传递给 Docker

问题描述

在我的 CodeBuild 步骤中,我将一个名为 VUE_APP_BACKEND 的环境变量定义为 URL。echo $VUE_APP_BACKEND我通过添加到我的 buildspec.yml确认这部分没问题。

那会输出

[Container] 2020/11/26 13:22:25 Running command echo $VUE_APP_BACKEND
https://my-url-here

但是,当我尝试将此参数转发到 docker build 时,它会丢失。我做错了吗?

我有一个看起来像这样的 Dockerfile。回声部分不输出任何内容。

#build stage
FROM node:12.18.2-alpine3.10 as build-stage

ARG VUE_APP_BACKEND
ENV VUE_APP_BACKEND $VUE_APP_BACKEND
RUN echo $VUE_APP_BACKEND

# Create app directory
RUN mkdir -p /app
WORKDIR /app

# Bundle app source
COPY package*.json ./
COPY .npmrc ./

RUN npm install

COPY . .
RUN npm run build

#production stage
FROM nginx:1.14.1-alpine as production-stage

COPY --from=build-stage /app/dist/spa /usr/share/nginx/html

COPY nginx.conf /etc/nginx/conf.d/default.conf

EXPOSE 80
CMD [ "nginx", "-g", "daemon off;" ]

标签: amazon-web-servicesdockeraws-codepipelineaws-codebuild

解决方案


推荐阅读