Loadimpact/k6:Docker 容器以脚本作为输入退出

Loadimpact/k6:Docker 容器以脚本作为输入退出

我们正在试验 loadimpact - k6 docker 镜像,并且我们希望更长时间地运行任务。

我们面临的问题是,如果 ssh 连接超时,容器就会退出。

命令:

docker run -i loadimpact/k6 run --vus 250 --duration 60m - <script.js

另外,如果我们不传递 -i 或使用 -d,它就不起作用。

我们希望它在后台执行,即使 ssh 超时它也应该可以工作。

答案1

这确实对我有帮助。

Dockerfile:

FROM loadimpact/k6
COPY script.js /

构建命令:

docker build -t load-testing -f Dockerfile .

运行命令:

docker run -d load-testing run --vus 250 --duration 60m script.js

答案2

您必须创建一个仅运行您的代码的新 Docker 映像。我建议您阅读一次 Docker 文档,您所要做的就是创建一个仅运行您的应用程序的新 Docker 映像。

我认为这个 Dockerfile 可以工作:

vi Dockerfile

FROM loadimpact/k6
COPY script.js /script.js
CMD ["run", "script.js","--vus","250","--duration","60m"]

将您自己的脚本和 Dockerfile 复制到一个文件夹中,然后运行以下命令:(这可能是错误的,因为我没有这些文件,而且我无法测试。)

docker build -t yourdesirename .

它将创建一个新的 docker 镜像,其中包含你输入的名称和最新标签,现在你可以在后台运行它

docker run -d yourdesirename:latest

相关内容