【发布时间】:2020-04-01 18:14:06
【问题描述】:
我使用 NodeJS 构建了一个后端,并希望使用 TravisCI 和 Docker 来运行测试。
在我的代码中,我有一个秘密环境:process.env.SOME_API_KEY
这是我的 Dockerfile.dev
FROM node:alpine
WORKDIR /app
COPY package.json .
RUN npm install
COPY . .
CMD ["npm", "run", "dev"]
我的码头工人撰写:
version: "3"
services:
api:
build:
context: .
dockerfile: Dockerfile.dev
volumes:
- /app/node_modules
- .:/app
ports:
- "3000:3000"
depends_on:
- mongo
mongo:
image: mongo:4.0.6
ports:
- "27017:27017"
这是我的 TravisCI
sudo: required
services:
- docker
before_script:
- docker-compose up -d --build
script:
- docker-compose exec api npm run test
我还在我的 travis 设置变量中设置了 SOME_API_KEY='xxx'。但是,容器似乎没有收到 SOME_API_KEY。
如何将 SOME_API_KEY 从 travisCI 传递给 docker?谢谢
【问题讨论】:
-
请务必将 Travis(设置页面)中的环境变量添加到引号内,例如:
FOO="foo"