阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      Docker 运行 Locust

      通过 Docker 运行 Locust

      为了简单起见,我们提供了一个可以独立运行,作为主服务器或从服务器运行的 Docker 映像。

      环境变量

      • LOCUST_MODE

        ‘standalone’, ‘master’, 或者 ‘slave’ 之一。默认是 ‘standalone’.

      • LOCUSTFILE_PATH

        容器内部到 locust file 的路径。默认为'/locustfile.py`

      • LOCUST_MASTER_HOST

        master 的主机名。

      • LOCUST_MASTER_PORT

        与 master 通信的端口。默认为 5557

      • LOCUST_OPTS

      传递给 locust 的其他选项。默认为空字符串""。

      运行测试

      使测试运行最简单的方法是使用内置的测试文件构建映像。

      一旦编写了 locustfile,就可以使用以下简单的方法将其烘烤到 Docker 映像中 Dockerfile:

      FROM locustio/locust
      ADD locustfile.py locustfile.py
      

      您需要将构建的映像推送至 Dockerhub,AWS ECR 或 GCR 等 Docker 存储库,以便分布式基础架构能够提取该映像。

      请参阅所选存储库的文档,以了解如何通过存储库进行身份验证以提取映像。

      为了在本地调试,您可以运行一个容器并将 locustfile 作为卷传递进来:

      docker run -p 8089:8089 --volume $PWD/dir/of/locustfile:/mnt/locust -e LOCUSTFILE_PATH=/mnt/locust/locustfile.py -e TARGET_URL=https://abc.com locustio/locust
      

      要在没有 Web UI 的情况下以独立模式运行,可以使用 LOCUST_OPTS 环境变量添加所需的选项:

      docker run --volume $PWD/dir/of/locustfile:/mnt/locust -e LOCUSTFILE_PATH=/mnt/locust/locustfile.py -e TARGET_URL=https://abc.com -e LOCUST_OPTS="--clients=10 --no-web --run-time=600" locustio/locust
      

      如果您是Kubernetes用户,你可以使用 Helm chart 缩放和运行locust.

      目录
      目录