我目前位于vue. js项目的文件夹中。源文件位于./src/文件夹中,测试文件位于./测试/中
通常要在本地运行单元测试,我运行以下命令:
npm install
npm ci
npm run test:ci
它会生成./report/coverage. lcov文件等
但是,我想使用node: 12-alpe docker镜像在其中运行单元测试。不要提供使用Dockerfile。我想使用docker run--rm node:12-alpin……运行它,并在docker run命令完成后将./report文件夹的内容复制到我的本地文件夹中。但是,我不知道如何做到这一点?我应该使用哪些docker run参数?
为什么在运行时bot将报表目标挂载为卷?
我可以通过创建script.sh文件在本地运行它
cd /tmp/run
npm install
npm ci
npm run test:ci
在项目目录中并运行:
docker run --rm -v ${PWD}/:/tmp/run -u 0 node:12-alpine sh /tmp/run/script.sh
这是伟大的,因为我不需要在本地安装另一个节点版本,运行后容器被删除…然而,我无法通过替换最后一行: cd /tmp/run
是的,我能做到这一点而且很简单
docker run --rm -v ${PWD}/:/tmp/run -u 0 --workdir=/tmp/run node:14-alpine npm install && npm ci && npm run test:ci