Javascript 尝试k6运行js文件时获取权限被拒绝
我正在努力学习k6,我从。我用docker图像和命令行尝试了示例代码。在docker版本中,它可以正常工作:Javascript 尝试k6运行js文件时获取权限被拒绝,javascript,permission-denied,k6,Javascript,Permission Denied,K6,我正在努力学习k6,我从。我用docker图像和命令行尝试了示例代码。在docker版本中,它可以正常工作: zeinab@ZiZi:~$ docker run -i loadimpact/k6 run - <k6_test.js /\ |‾‾| /‾‾/ /‾/ /\ / \ | |_/ / / / / \/ \ | | / ‾‾\ / \ | |‾
zeinab@ZiZi:~$ docker run -i loadimpact/k6 run - <k6_test.js
/\ |‾‾| /‾‾/ /‾/
/\ / \ | |_/ / / /
/ \/ \ | | / ‾‾\
/ \ | |‾\ \ | (_) |
/ __________ \ |__| \__\ \___/ .io
execution: local--------------------------------------------------] servertor
output: -
script: -
duration: -, iterations: 1
vus: 1, max: 1
time="2020-02-18T11:14:26Z" level=info msg=Running i=0 t=971.124809ms starting
...
time="2020-02-18T11:14:55Z" level=info msg=Running i=0 t=29.971104099s
time="2020-02-18T11:14:55Z" level=warning msg="Request Failed" error="Get http://test.loadimpact.com: proxyconnect tcp: dial tcp 192.168.14.109:1087: i/o timeout"
time="2020-02-18T11:14:56Z" level=info msg=Running i=0 t=30.971060995s
time="2020-02-18T11:14:56Z" level=info msg="Test finished" i=1 t=31.000143344s
data_received..............: 0 B 0 B/s
data_sent..................: 0 B 0 B/s
http_req_blocked...........: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_connecting........: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_duration..........: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_receiving.........: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_sending...........: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_tls_handshaking...: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...........: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_reqs..................: 1 0.032258/s
iteration_duration.........: avg=31s min=31s med=31s max=31s p(90)=31s p(95)=31s
iterations.................: 1 0.032258/s
vus........................: 1 min=1 max=1
vus_max....................: 1 min=1 max=1
编辑1:
使用当前用户运行时,我收到相同的错误:
k6 run ./k6_test.js
编辑2:
我使用snap
安装了k6
:
zeinab@ZiZi:~$ snap install k6
k6 v0.23.1 from Null Box (nullboxorg) installed
鉴于您使用snap来安装它,这意味着snap内部的k6也无法访问您的整个fs(就像docker一样) 我不太理解snap,但考虑到去年为snap构建k6的人,我建议只获取并运行它;) 原始答复: 这正是它所说的:您的
root
用户无法打开/home/zeinab/k6_test.js
,因为他们没有权限。我猜他们要么无法读取您的主目录(/home/zeinab
),要么无法读取文件本身
您实际上不需要使用sudo
,因此可以删除它或修复脚本的权限,尽管再次使用root运行是不必要的,无论哪种方式都是不好的做法:D
作为补充说明,docker可以工作,因为您运行的任何shell(可能是bash)都是读取文件并将其发送给docker进程的stdin的shell。因此,即使
docker
是sudo docker的别名,它仍然可以工作。你能发布ls-l./k6_test.js的输出吗?-rw-r--r--1 zeinab zeinab 142 Feb 18 14:41./k6_test.jsls-l/home/zeinab/k6_test.js以及cat/home/zeinab/k6_test.js
成功了吗-rw-r--r--1 zeinab zeinab 142 Feb 18 14:41/home/zeinab/k6_test.js
是的,cat/home/zeinab/k6_test.js
成功。您是如何安装k6的?k6版本说明了什么(不应该是相关的)。。。
zeinab@ZiZi:~$ snap install k6
k6 v0.23.1 from Null Box (nullboxorg) installed