问题:

我用 docker 搭建了 Jenkins,在里面配置了一个 Python 的接口测试,进行构建时,返回报错:找不到运行文件

出现步骤:

docker run --rm --name pytest_1 -v ${WORKSPACE}:/app -w /app my python -m pytest test.py

构建结束后报错如下:

自我排查:

1.通过 docker 命令查询容器空间,发现容器内并没有相关的代码文件
2.根据 Jenkins 日志,查找本地 workspace 路径,发现本地 workspace 目录如下

3.使用 docker exec 命令进入 docker 容器,在相应的 workspace 目录发现代码文件

根据自己排查,初步确定问题是:代码是储存在 docker 容器内,而 Jenkins 在构建时跑 docker run 命令时调用的是本地目录,不是 Jenkins 容器目录从而导致报错

各位大佬们帮忙看看,提下解决思路,或者方案,谢谢!


↙↙↙阅读原文可查看相关链接,并与作者交流