在docker容器内创建蝗虫报告时权限被拒绝

2024-06-23 20:08:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在尝试在docker容器中运行Occast,它可以很好地用于除创建html/csv报告之外的所有操作

这就是我所做的:

我已经创建了自己的dockfile,扩展了蝗虫文件(只需复制我的文件):

FROM locustio/locust

COPY . /test/

WORKDIR /test

然后我像这样运行蝗虫测试:

docker run --name test -p 8089:8089 LocustImage -f src/tests/create_tests.py --run-time 30s --users 1 --spawn-rate 1 --html loadReport.html

但当我运行这个时,我得到:

2021-06-07T08:28:15.6966999Z Traceback (most recent call last):
2021-06-07T08:28:15.6967735Z   File "/usr/local/bin/locust", line 8, in <module>
2021-06-07T08:28:15.6968335Z     sys.exit(main())
2021-06-07T08:28:15.6969642Z   File "/usr/local/lib/python3.8/site-packages/locust/main.py", line 429, in main
2021-06-07T08:28:15.6970610Z     with open(options.html_file, "w", encoding="utf-8") as file:
2021-06-07T08:28:15.6971572Z PermissionError: [Errno 13] Permission denied: 'loadReport.html'

我还尝试添加如下卷:

docker run --name test -p 8089:8089 --volume /home/vsts/work/r1/a/report:/test/report LocustImage -f src/tests/create_tests.py --run-time 30s --users 1 --spawn-rate 1 --html /test/report/loadReport.html

但还是一样的问题。有人知道我做错了什么吗?还没有找到任何好的例子,如何得到报告与蝗虫内docker


Tags: 文件dockerrunnamepytestreportmain
1条回答
网友
1楼 · 发布于 2024-06-23 20:08:34

现在就想出来(或者至少找到了解决方案)

但首先,卷无法工作的问题似乎是因为azure devops。当我在云中运行它时,它不起作用,但如果我在本地计算机上使用volume,它就可以正常工作

但最终我在docker文件中得到了以下修复:

FROM locustio/locust

COPY . /test/

USER root

RUN mkdir -p /test/report

WORKDIR /test

我读到大多数人建议不要使用root,但至少它可以工作,并且认为在这种情况下可以

相关问题 更多 >

    热门问题