
octoperf/jmeter-standard本镜像基于 Linux 系统构建,集成以下核心组件:
提供一站式 Java 应用性能测试环境,支持本地/远程测试执行、测试过程远程控制、集成 OctoPerf 高级测试功能,适用于快速搭建标准化性能测试平台。
假设镜像托管于 Docker Hub,拉取命令如下:
bashdocker pull [镜像仓库地址]/openjdk-ssh-jmeter-octoperf:latest
bashdocker run -d \ --name jmeter-test-env \ -p 2222:22 \ # SSH 端口映射(主机端口:容器端口) -p 8080:8080 \ # JMeter 图形界面端口(如需) -v /local/test/scripts:/jmeter/scripts \ # 挂载本地测试脚本目录 -v /local/test/reports:/jmeter/reports \ # 挂载报告输出目录 -e SSH_USER=testuser \ # SSH 登录用户名 -e SSH_PASSWORD=testpass123 \ # SSH 登录密码 -e JMETER_HEAP_SIZE=1024m \ # JMeter JVM 堆内存 -e OCTOPERF_API_KEY=your_octoperf_api_key \ # OctoPerf API 密钥(可选) [镜像仓库地址]/openjdk-ssh-jmeter-octoperf:latest
创建 docker-compose.yml 文件:
yamlversion: '3.8' services: jmeter-env: image: [镜像仓库地址]/openjdk-ssh-jmeter-octoperf:latest container_name: jmeter-test-env ports: - "2222:22" # SSH 端口 - "8080:8080" # JMeter 图形界面端口 - "4445:4445" # JMeter 分布式测试端口(如需) volumes: - ./test-scripts:/jmeter/scripts # 测试脚本目录 - ./test-reports:/jmeter/reports # 报告输出目录 - ./jmeter.properties:/jmeter/bin/jmeter.properties # 自定义 JMeter 配置 environment: - SSH_USER=testuser - SSH_PASSWORD=testpass123 - JMETER_HEAP_SIZE=2048m - JMETER_THREADS=1000 # 默认线程数(用于简化脚本) - OCTOPERF_API_KEY=your_octoperf_api_key - OCTOPERF_PROJECT_ID=your_project_id # OctoPerf 项目 ID(可选) restart: unless-stopped
启动服务:
bashdocker-compose up -d
| 环境变量名 | 描述 | 默认值 | 是否必填 |
|---|---|---|---|
SSH_USER | SSH 登录用户名 | jmeter | 否 |
SSH_PASSWORD | SSH 登录密码 | random | 否 |
SSH_PORT | 容器内 SSH 服务端口 | 22 | 否 |
JMETER_HEAP_SIZE | JMeter JVM 堆内存(如 512m、2g) | 512m | 否 |
JMETER_THREADS | JMeter 默认测试线程数 | 100 | 否 |
JMETER_RAMP_TIME | JMeter 默认 Ramp-Up 时间(秒) | 60 | 否 |
OCTOPERF_API_KEY | OctoPerf 平台 API 密钥(用于云集成) | 空 | 否 |
OCTOPERF_PROJECT_ID | OctoPerf 项目 ID(用于报告关联) | 空 | 否 |
bashssh [SSH_USER]@[主机IP] -p [主机映射的SSH端口] # 示例:ssh testuser@192.168.1.100 -p 2222
bashssh-keygen -t rsa -b 2048 -f ~/.ssh/jmeter_key
~/.ssh/jmeter_key.pub 内容挂载至容器 ~/.ssh/authorized_keys:
bashdocker run -d \ ... \ -v ~/.ssh/jmeter_key.pub:/home/[SSH_USER]/.ssh/authorized_keys \ ...
bashssh -i ~/.ssh/jmeter_key [SSH_USER]@[主机IP] -p [SSH端口]
通过 SSH 登录容器后,执行 JMeter 测试:
bashcd /jmeter/bin ./jmeter -n -t /jmeter/scripts/test_plan.jmx -l /jmeter/reports/test_result.jtl -e -o /jmeter/reports/html
-n:非 GUI 模式运行-t:指定测试计划文件(.jmx)-l:生成结果日志(.jtl)-e -o:生成 HTML 报告并输出至指定目录OCTOPERF_API_KEY 环境变量bash./jmeter -Joctoperf.api.key=$OCTOPERF_API_KEY -n -t /jmeter/scripts/octoperf_cloud_test.jmx
-v 挂载至主机目录,避免容器删除后数据丢失SSH_PASSWORD 应设置复杂密码JMETER_HEAP_SIZE,高并发测试建议配置 2G 以上内存jmeter-plugins-manager 执行:
bash./jmeter -Jplugins.manager.version=1.10 -n -t /jmeter/bin/PluginsManagerCMD.jmx -Jaction=install -Jplugins=octoperf-jmeter-plugin
netstat -tuln 检查端口占用情况



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务