我正在使用Gitlab CI来为我的Node.js应用程序实现CI。我已经在使用工件并共享作业之间的依赖关系,但是,我想让它更快。每次管道启动时,它都会在第一个作业期间安装依赖项,并且我正在考虑通过在Docker映像中包含所有依赖项并将该映像传递给test&生产阶段。但是,我一直无法这样做。显然Gitlab没有在我的图像的WORKDIR中运行代码。
以下是我的Dockerfile:
FROM node:6.13-alpine
WORKDIR /home/app
COPY package.json .
RUN npm install
CMD [“sh”]
以下是我的gitlab-ci.yml:
test:
image: azarboon/dependencies-test
stage: test
script:
— pwd
— npm run test
查看日志,pwd
会生成/builds/anderson-martin/lambda-test
,这与定义的WORKDIR不同,也找不到已安装的依赖项。你有什么建议让我如何Dockerize我的依赖关系,加快构建阶段?