Docker部署k6,一条命令跑起性能测试环境

准备工作:先确认Docker环境

用Docker部署k6的前提是机器上已经安装了Docker。
如果你还没装,可以参考官方文档(Windows/Linux/macOS都有对应安装包)。
安装后打开终端,执行docker version确认版本号。
如果看到Client和Server信息,说明Docker正常运行。

注意:Docker Desktop在Windows/macOS上需要先启动。Linux下如果当前用户不在docker组,命令前加sudo。

拉取k6镜像并启动容器

k6官方镜像名为grafana/k6,一行命令就能完成拉取和运行:

docker pull grafana/k6

拉取完成后,可以用最简单的“hello world”测试容器是否正常:

docker run --rm -i grafana/k6 run --stdin <

这条命令会把脚本通过标准输入传给k6容器,容器内立刻执行一次虚拟用户访问。
如果看到类似✓的检查点和请求耗时输出,说明Docker部署k6成功。

关键点:--rm表示容器退出后自动删除,-i保持输入流打开。
实际使用中你更常用卷挂载的方式运行本地脚本。

编写脚本并挂载运行

把测试脚本保存到本地文件,比如test.js:

import http from 'k6/http';
import { check, sleep } from 'k6';

export default function () {
  let res = http.get('https://httpbin.org/get');
  check(res, { 'status is 200': (r) => r.status === 200 });
  sleep(0.5);
}

然后通过挂载目录运行:

docker run --rm -i -v $(pwd):/scripts grafana/k6 run /scripts/test.js

这里$(pwd)是当前目录,Linux/macOS下有效;
Windows PowerShell用${PWD}。
脚本放在容器内的/scripts下,k6会读取执行。

如果测试目标在宿主机(如localhost),容器内无法直接访问本地网络。
解决方法:用--network=host(Linux)或替换为host.docker.internal(Windows/macOS)。

常见报错与避坑说明

报错1:docker: command not found
原因:Docker未安装或未加入PATH。请重新安装或手动添加路径。

报错2:Cannot connect to the Docker daemon
原因:Docker服务未运行。Linux下执行sudo systemctl start docker,Windows/macOS启动Docker Desktop。

报错3:k6 run - < script.js报错
如果你直接在容器内使用-从stdin读取脚本,请确保脚本内容用EOF包裹正确(参考上文第一条命令)。避免中文乱码或多余空格。

避坑提示:

  • 镜像默认使用--rm,容器退出后自动清理。如果想保留容器日志,去掉--rm并加上--name k6-test。
  • 脚本路径要写对:挂载后容器内路径是/scripts/你的文件名.js。
  • 测试目标地址如果是内网服务,请确保容器网络模式能连通主机或直接使用--network host。

验证部署是否成功

运行以下命令做一个简单的基准测试:

docker run --rm -i grafana/k6 run --vus 2 --duration 10s --stdin <

观察输出末尾的http_req_duration平均值和checks部分。
如果全部通过,Docker部署k6就彻底落地了。
你也可以用docker ps -a确认没有残留容器。

如果你的场景需要保存测试报告,可以用--out json=/results/report.json配合挂载目录实现。

小结

通过以上步骤你已经学会了如何用Docker部署k6并运行真实测试。
实际生产环境中,k6适合持续集成、自动化压测,配合InfluxDB+Grafana还能可视化结果。
遇到异常时优先检查Docker运行状态和网络模式,大多数问题都能快速定位。
如果你正在处理Docker部署k6,建议先按本文步骤完整执行,再根据自己的环境做微调;
遇到异常时优先回看避坑和高频问题部分。

分享到:
上一篇
Linux服务器系统安全加固教程
下一篇
宝塔面板Nginx缓存清理全攻略:三步解决网站更新不生效
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意