我已经在 docker 中安装了 locust,我也映射了 docker 端口,但是当我运行 locust 命令时出现以下错误,我可以在命令行上运行 locust,但不能在 Web-ui 上运行,可能我可能会错过哪个主机或访问时应使用端口。
命令:
locust -f locustfile.py
错误:
oserror errno 97 协议不支持地址族
命令:
locust -f locustfile.py --web-host=localhost
结果:
[2019-12-18 11:24:47,101] ABZ-218/INFO/locust.main:启动网络 监控http://localhost:8089
[2019-12-18 11:24:47,102] ABZ-218/INFO/locust.main: 启动 Locust 0.13.2
但无法在浏览器上访问它。
我已映射端口
0.0.0.0:8089
->80
那么我应该在点击 Locust 时使用哪个命令以及从 chrome 浏览器访问它时应该使用哪个命令?
--web-host=localhost
,默认情况下 Locust 将监听所有接口。尝试将其删除,看看是否有帮助。
您可以找到应用程序运行位置的 IP 地址,并将其作为参数传递给
--host
,例如--host http://127.0.0.1:8000
。
仅供未来登陆此页面的访问者使用:如果您使用
docker compose run
(不是 up
)从 Docker 运行 Locust 实例,由于端口映射,Web 界面可能无法访问。
在澄清
run
和 up
命令之间的区别时,docker compose run
文档指出:
第二个区别是
命令不会创建服务配置中指定的任何端口。这可以防止端口与已打开的端口发生冲突。如果您确实希望创建服务的端口并将其映射到主机,请指定docker compose run
--service-ports
因此,要使用 docker 启动 Locust Web UI,请使用两者之一:
docker compose up
docker compose run --service-ports <service-name> <command>