Node.js 使用docker-compose.test自动测试docker映像:缺少环境变量
我有一个Node/Express应用程序,我正在使用它包含用于开发和测试的环境变量。 在自动测试期间(我有一个Node.js 使用docker-compose.test自动测试docker映像:缺少环境变量,node.js,docker,environment-variables,Node.js,Docker,Environment Variables,我有一个Node/Express应用程序,我正在使用它包含用于开发和测试的环境变量。 在自动测试期间(我有一个Docker compose.test.yml),我正在将我的Docker存储库推到和,似乎没有找到环境变量: Successfully built 69f35563f12e Successfully tagged gkatsanos/server:latest Starting Test in docker-compose.test.yml... Building sut Step
Docker compose.test.yml
),我正在将我的Docker存储库推到和,似乎没有找到环境变量:
Successfully built 69f35563f12e
Successfully tagged gkatsanos/server:latest
Starting Test in docker-compose.test.yml...
Building sut
Step 1/10 : FROM node:8-alpine
---> 4db2697ce114
Step 2/10 : EXPOSE 3000
---> Using cache
---> ef9e0a8a09e1
Step 3/10 : ARG NODE_ENV
---> Using cache
---> cc6143bf9bee
Step 4/10 : ENV NODE_ENV $NODE_ENV
---> Using cache
---> 6477a9e9657f
Step 5/10 : RUN mkdir /app
---> Using cache
---> e9fff66cf3da
Step 6/10 : WORKDIR /app
---> Using cache
---> da82362255c6
Step 7/10 : ADD package.json yarn.lock seed.js /app/
---> Using cache
---> 97a842faeb2a
Step 8/10 : RUN yarn --pure-lockfile
---> Using cache
---> 6745c0d8c64c
Step 9/10 : ADD . /app
---> Using cache
---> 06d46eb4a57b
Step 10/10 : CMD yarn start
---> Using cache
---> 69f35563f12e
Successfully built 69f35563f12e
Successfully tagged b5wqkysdhyuqf8uz4kyreyn_sut:latest
Creating network "b5wqkysdhyuqf8uz4kyreyn_default" with the default driver
Creating b5wqkysdhyuqf8uz4kyreyn_sut_1 ...
Creating b5wqkysdhyuqf8uz4kyreyn_sut_1
Creating b5wqkysdhyuqf8uz4kyreyn_sut_1 ... done
yarn run v1.3.2
$ NODE_ENV=test nyc --reporter=html --reporter=text mocha --timeout 20000 --recursive src/tests
/app/node_modules/dotenv-safe/index.js:37
throw new MissingEnvVarsError(allowEmptyValues, options.path || '.env', sample, missing, dotenvResult.error);
docker建筑和运行工程在当地进行
这是我的dockerfile:
FROM node:8-alpine
EXPOSE 3000
ARG NODE_ENV
ENV NODE_ENV $NODE_ENV
RUN mkdir /app
WORKDIR /app
ADD package.json yarn.lock seed.js /app/
RUN yarn --pure-lockfile
ADD . /app
CMD ["yarn", "start"]
还有我的docker-compose.test.yml:
version: "3"
services:
sut:
build: .
command: yarn test
顺便说一下,cloud.docker.com在其UI中有一个位置,允许添加环境变量: