
obabec/clamav-mockclamav-mock是一个用于模拟ClamAV(开源防病毒软件)行为的Docker容器,旨在为开发、测试环境提供轻量级的防病毒软件模拟服务。该镜像基于GitHub项目obabec/clamav-mock构建,可模拟ClamAV的核心功能和响应,无需部署真实的ClamAV环境。
clamscan、clamdscan等ClamAV命令行工具的基本行为和输出格式通过docker run启动容器,直接模拟clamscan命令行为:
bash# 模拟"检测到病毒"的扫描结果 docker run --rm obabec/clamav-mock clamscan --mock-result=FOUND /path/to/test/file # 模拟"未检测到病毒"的扫描结果 docker run --rm obabec/clamav-mock clamscan --mock-result=NOT_FOUND /path/to/test/file
启动容器并暴露ClamAV默认服务端口(3310),模拟clamd服务:
bash# 启动模拟clamd服务,默认监听3310端口 docker run -d -p 3310:3310 --name clamav-mock obabec/clamav-mock clamd # 从主机测试连接(需安装clamd客户端工具) echo PING | nc localhost 3310 # 应返回"PONG"
通过环境变量自定义容器行为:
| 环境变量 | 说明 | 可选值 | 默认值 |
|---|---|---|---|
MOCK_SCAN_RESULT | 全局默认扫描结果 | FOUND, NOT_FOUND | NOT_FOUND |
MOCK_DELAY | 模拟扫描延迟(毫秒) | 正整数 | 0 |
CLAMD_PORT | clamd服务监听端口 | 1-65535 | 3310 |
LOG_LEVEL | 日志级别 | DEBUG, INFO, ERROR | INFO |
示例:启动带延迟的模拟服务,默认返回"检测到病毒":
bashdocker run -d -p 3310:3310 \ -e MOCK_SCAN_RESULT=FOUND \ -e MOCK_DELAY=1000 \ --name clamav-mock obabec/clamav-mock clamd
在docker-compose.yml中集成到应用测试环境:
yamlversion: '3' services: app: build: . depends_on: - clamav-mock environment: - CLAMAV_HOST=clamav-mock - CLAMAV_PORT=3310 clamav-mock: image: obabec/clamav-mock ports: - "3310:3310" environment: - MOCK_SCAN_RESULT=FOUND # 模拟环境中默认返回"检测到病毒" command: clamd


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