Fixity Checking Service Docker镜像是一个专为数字保存服务设计的校验工具,旨在确保数据在长期保存过程中的完整性和一致性。该服务通过计算并校验文件的哈希值(校验和),检测数据是否因存储介质故障、传输错误或未授权篡改而损坏,是数字资源长期保存体系中的关键组件。
该镜像适用于所有需要确保数据长期完整性的场景,包括但不限于:
1. 直接使用docker run启动
bashdocker run -d \ --name fixity-service \ -p 8080:8080 \ -v /host/data:/data \ # 挂载待校验数据目录(必填) -v /host/logs:/var/log/fixity # 挂载日志与报告目录(可选) -e CHECK_ALGORITHM=SHA256 \ # 指定默认校验算法 -e SCHEDULE="0 0 * * *" \ # 每日凌晨执行全量校验(Cron表达式) fixity-checking-service:latest
2. 使用docker-compose配置
创建docker-compose.yml文件:
yamlversion: '3.8' services: fixity-service: image: fixity-checking-service:latest container_name: fixity-service restart: unless-stopped ports: - "8080:8080" # 服务API端口 volumes: - /host/data:/data:ro # 待校验数据目录(只读挂载,防止误改) - /host/config:/etc/fixity # 自定义配置文件目录(可选) - /host/logs:/var/log/fixity # 日志与报告持久化目录 environment: - PORT=8080 # 服务监听端口 - LOG_LEVEL=INFO # 日志级别(INFO/WARN/ERROR/DEBUG) - CHECK_ALGORITHM=SHA256 # 默认校验算法 - SCAN_PATH=/data # 待校验根目录 - SCHEDULE="0 0 * * *" # 定时校验任务(Cron表达式) - REPORT_FORMAT=JSON # 报告输出格式(JSON/CSV)
启动服务:
bashdocker-compose up -d
| 环境变量名 | 描述 | 默认值 | 可选值 |
|---|---|---|---|
PORT | 服务监听端口 | 8080 | 1-65535范围内有效端口 |
LOG_LEVEL | 日志输出级别 | INFO | DEBUG/INFO/WARN/ERROR |
CHECK_ALGORITHM | 默认校验算法 | SHA256 | MD5/SHA1/SHA256/SHA512 |
SCAN_PATH | 批量校验的根目录路径(容器内路径) | /data | 容器内可访问的绝对路径 |
SCHEDULE | 定时校验任务Cron表达式 | ""(禁用) | 标准Cron格式(如0 */6 * * *每6小时) |
REPORT_FORMAT | 校验报告输出格式 | JSON | JSON/CSV |
REPORT_RETENTION | 报告文件保留天数 | 30 | 正整数(0表示不自动删除) |
| 宿主机路径 | 容器内路径 | 用途说明 | 挂载方式 |
|---|---|---|---|
/host/data | /data | 待校验数据目录,需包含原始文件或校验和文件 | 必须挂载(ro推荐) |
/host/logs | /var/log/fixity | 日志文件(fixity.log)和校验报告存储目录 | 可选(建议挂载) |
/host/config | /etc/fixity | 自定义配置文件(如config.yaml)目录 | 可选 |
若需自定义高级配置(如API密钥、第三方服务集成),可在/etc/fixity目录下创建config.yaml文件,示例:
yamlapi: key: "your-api-key" # 启用API认证时的访问密钥(留空则禁用认证) timeout: 30s # API请求超时时间 check: ignore_patterns: # 忽略校验的文件模式(支持通配符) - "*.tmp" - ".*.swp" report: output_dir: "/var/log/fixity/reports" # 报告输出目录(覆盖环境变量)
docker start fixity-servicedocker stop fixity-servicedocker logs -f fixity-servicedocker inspect -f '{{.State.Status}}' fixity-service服务启动后,可通过http://<容器IP>:8080访问REST API,核心接口示例:
POST /api/check,请求体{"path": "/data/docs", "algorithm": "SHA256"}GET /api/reports?date=2024-01-01GET /api/tasks具体接口文档可访问http://<容器IP>:8080/swagger查看(需启用Swagger,通过环境变量ENABLE_SWAGGER=true配置)。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务