ClamAV-REST是一个二合一Docker镜像,集成了开源病毒扫描器ClamAV([***] API接口,用于与ClamAV进程交互。
此容器本身功能有限,需配合额外服务或通信工具与其交互使用。
推荐通过Docker Hub自动构建镜像进行安装,镜像地址:Registry。
bashdocker pull ajilaag/clamav-rest:(imagetag)
可用镜像标签:
latest - 包含最新版本ClamAV和REST APIbashdocker run -p 9000:9000 -p 9443:9443 -itd --name clamav-rest ajilaag/clamav-rest
检测测试病毒签名(Eicar测试文件)
HTTP方式:
bash$ curl -i -F "file=@eicar.com.txt" http://localhost:9000/scan HTTP/1.1 100 Continue HTTP/1.1 406 Not Acceptable Content-Type: application/json; charset=utf-8 Date: Mon, 28 Aug 2017 20:22:34 GMT Content-Length: 56 { Status: "FOUND", Description: "Eicar-Test-Signature" }
HTTPS方式:
bash$ curl -i -k -F "file=@eicar.com.txt" https://localhost:9443/scan HTTP/1.1 100 Continue HTTP/1.1 406 Not Acceptable Content-Type: application/json; charset=utf-8 Date: Mon, 28 Aug 2017 20:22:34 GMT Content-Length: 56 { Status: "FOUND", Description: "Eicar-Test-Signature" }
检测干净文件
HTTP方式:
bash$ curl -i -F "file=@clamrest.go" http://localhost:9000/scan HTTP/1.1 100 Continue HTTP/1.1 200 OK Content-Type: application/json; charset=utf-8 Date: Mon, 28 Aug 2017 20:23:16 GMT Content-Length: 33 { Status: "OK", Description: "" }
HTTPS方式:
bash$ curl -i -k -F "file=@clamrest.go" https://localhost:9443/scan HTTP/1.1 100 Continue HTTP/1.1 200 OK Content-Type: application/json; charset=utf-8 Date: Mon, 28 Aug 2017 20:23:16 GMT Content-Length: 33 { Status: "OK", Description: "" }
可通过以下环境变量自定义镜像配置:
| 参数 | 描述 |
|---|---|
MAX_SCAN_SIZE | 每个文件的扫描数据量 - 默认 100M |
MAX_FILE_SIZE | 不扫描大于此大小的文件 - 默认 25M |
MAX_RECURSION | 扫描嵌套归档的层数 - 默认 16 |
MAX_FILES | 归档内扫描文件数量 - 默认 *** |
MAX_EMBEDDEDPE | 嵌入式PE文件的最大大小 - 默认 10M |
MAX_HTMLNORMALIZE | 要标准化的HTML最大大小 - 默认 10M |
MAX_HTMLNOTAGS | 要扫描的标准化HTML文件的最大大小 - 默认 2M |
MAX_SCRIPTNORMALIZE | 要标准化的脚本最大大小 - 默认 5M |
MAX_ZIPTYPERCG | 用于重新分析类型识别的ZIP最大大小 - 默认 1M |
MAX_PARTITIONS | 每个原始磁盘扫描的分区数 - 默认 50 |
MAX_ICONSPE | PE文件中扫描的图标数 - 默认 100 |
PCRE_MATCHLIMIT | 最大PCRE匹配调用次数 - 默认 *** |
PCRE_RECMATCHLIMIT | PCRE的最大递归匹配调用次数 - 默认 2000 |
SIGNATURE_CHECKS | 每天检查新数据库签名的次数(1-50之间) - 默认 24 |
| 端口 | 描述 |
|---|---|
3310 | ClamD监听端口 |
如需调试或维护,可通过以下命令访问容器shell:
bashdocker exec -it (容器名称,如clamav-rest) /bin/sh
已实现Prometheus指标([***]
HTTP:
bashcurl http://localhost:9000/metrics
HTTPS:
bashcurl https://localhost:9443/metrics
源代码地址:[***]
构建Golang(Linux)二进制文件和Docker镜像:
bash# env GOOS=linux GOARCH=amd64 go build docker build . -t clamav-go-rest docker run -p 9000:9000 -p 9443:9443 -itd --name clamav-rest clamav-go-rest
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429