ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

watermarks-remover Docker部署指南:compose profile一键编排,从本地serve到GHCR生产镜像

watermarks-remover Docker部署指南:compose profile一键编排,从本地serve到GHCR生产镜像 watermarks-remover Docker部署指南compose profile一键编排从本地serve到GHCR生产镜像【免费下载链接】watermarks-removerA privacy-first app that strips AI watermarks from content you own.项目地址: https://gitcode.com/gh_mirrors/wa/watermarks-remover本文是watermarks-remover——一个隐私优先的开源 AI 水印去除工具——的 Docker 部署完整指南3 步从本地 serve 快速体验到 compose profile 一键编排再到拉取 GHCR 生产镜像。全程无需在宿主机配置 Python 环境。先认识 watermarks-remover它能去掉哪些 AI 痕迹watermarks-remover 由薄客户端技能 纯标准库 Python 服务组成覆盖三层标记层级去除对象方式Layer A不可见 Unicode、异常空格、bidi/标签字符确定性 Python 脚本Layer B统计型token 采样文本水印Agent 重写 可选rewrite_text.py钩子文件层C2PA / EXIF / XMP / 文档属性PNG、JPEG、PDF、DOCX、XLSX、MP4、WAV、EPUB 等 20 格式Docker 部署最大的价值核心镜像里已预装exiftool、qpdf、c2patool三个系统工具宿主机零依赖并且以只读文件系统 非 root 用户运行安全省心。选择部署路径本地 serve 还是 Docker compose方案命令适合场景本地 servemake serve快速体验仅需 Python 3.10无 Dockerdocker run核心镜像见下文单机试用、CI 里跑一次性清洗docker compose全量编排docker compose up -d长期使用 可选 harness/heavy 后端 技能skill只是 HTTP 薄客户端无论哪种方式它对服务的调用方式完全一致只需能访问WATERMARKS_SERVICE_URL默认http://127.0.0.1:8765。本地快速起步一条 make serve 启动去水印服务最快的体验方式是不用 Docker直接跑标准库 HTTP 服务源码见 service/scripts/server.pymake serve # 等价于 python3 service/scripts/server.py --host 127.0.0.1 --port 8765然后验证健康检查curl -s http://127.0.0.1:8765/health # {ok: true, version: ...}服务按文件扩展名 魔数自动路由 text / image / container/inspect检查、/clean清洗、/detect检测、/openapi.json提供机器可读的 OpenAPI 契约。Docker compose 一键编排3 个 profile 档位一次讲清编排定义在 compose.yaml 中采用profile 分层设计按需加档互不干扰docker compose up -d # ① 核心 HTTP 服务默认档 docker compose --profile harness up -d # ② markllm / markdiffusion 验证框架 docker compose --profile heavy up -d # ③ ctrlregen / synthid 重后端本地构建 docker compose --profile harness --profile heavy up -d # 全量各服务一览服务所属 profile角色wr-core默认必启核心 HTTP 服务映射127.0.0.1:8765wr-markllmharnessMarkLLM 文本水印同配置验证 CLIwr-markdiffusionharnessMarkDiffusion 图像水印验证 / 再生成去除 CLIwr-ctrlregenheavyCtrlRegen 像素级水印去除仅本地构建wr-synthidheavyreverse-SynthID 评分 CLI仅本地构建wr-synthid-scoreheavySynthID 评分 HTTP sidecar端口 8766⚠️ 注意harness/heavy 服务都是一次性 CLI——up只是用--help确认镜像可用真正干活要用docker compose run --rm 服务名 ...例如docker compose run --rm wr-ctrlregen /data/shot.png -o /data/out.pngGHCR 生产镜像怎么拿哪些镜像会公开发布镜像在v*版本标签时自动发布到 GHCR仓库为ghcr.io/guillaumemeyer/watermarks-remover镜像 tag内容是否发布:tag/:latest核心 HTTP 服务 全部清洗器 exiftool/qpdf/c2patool✅:markllm-tag/:markllm-latestMarkLLM 文本水印验证框架✅:markdiffusion-tag/:markdiffusion-latestMarkDiffusion 图像验证框架✅watermarks-remover-ctrlregen:localCtrlRegen 像素去除❌ 仅本地构建上游无 LICENSEwatermarks-remover-synthid-scorer:localreverse-SynthID 评分器❌ 仅本地构建非商业研究许可证本地也可以自己构建核心镜像构建文件见 service/Dockerfile基础镜像按 digest 钉死、工具按 sha256 校验防止供应链漂移make docker-core-build docker run --rm -p 127.0.0.1:8765:8765 --read-only --tmpfs /tmp watermarks-remover.env 一站式配置鉴权密钥与进阶选项清洗任意文本不需要任何配置——核心服务开箱即用。所有可选项都放在仓库根目录的.env里docker compose会自动加载并插值compose.yaml中的${VAR}同名 shell 环境变量优先。模板见 .env.examplecp .env.example .env # 按需修改 docker compose up -d # 自动读取 .env变量作用WATERMARKS_SERVER_API_KEY设置后所有 HTTP 请求需带Authorization: Bearer key生产环境强烈建议WATERMARKS_SYNTHID_SCORER_URL/WATERMARKS_SYNTHID_SCORER_API_KEY将wr-core指向 heavy 档的评分 sidecar如http://wr-synthid-score:8766两端共享同一 bearer 密钥HF_TOKENharness/heavy 服务下载 Hugging Face 受限模型的令牌仅环境变量绝不上命令行WATERMARKS_REWRITE_*Layer B 重写的后端/模型/密钥rewrite_text.py直连时需要agent 技能自带模型则不需要WATERMARKS_SERVICE_URL客户端侧技能/curl 访问服务的地址默认http://127.0.0.1:8765️.env已在.gitignore中默认拒绝提交切勿把密钥提交进仓库。部署验证30 秒自检 compose-check仓库自带健康检查脚本 compose-check.sh对wr-core打GET /health并让每个 harness/heavy 服务跑--help全部通过才返回 0make compose-check # 或./compose-check.sh输出形如wr-core: OK wr-markllm: OK ...常见问题 FAQ问部署完怎么发第一个清洗请求curl -s -X POST http://127.0.0.1:8765/clean -H Content-Type: application/json \ -d {\file\: \$(base64 notes.md | tr -d \n)\, \name\: \notes.md\}问其他机器/容器能访问这个服务吗默认只映射回环地址127.0.0.1:8765属于可信网络内单用户设计。跨主机暴露时请修改 compose 端口映射并务必设置WATERMARKS_SERVER_API_KEY。问harness/heavy 镜像为什么拉不到ctrlregen与synthid两个镜像因上游许可证原因无 LICENSE / 非商业研究许可永不发布只能docker compose --profile heavy up -d时在本地构建——这也是许可证合规设计的一部分。问.env改了要重启吗要。docker compose up -d重新应用即可compose 只在容器启动时插值一次。小结watermarks-remover 的 Docker 部署非常清爽docker compose up -d一条命令起核心服务harness/heavy两个 profile 按需扩展验证与重后端.env一个文件管全部配置make compose-check一键自检生产镜像直接从 GHCR 拉取。架构细节与演进方向可参考 docs/plans/ideas/deployment-docker-cli-api.md完整说明见 README.md。⚖️ 负责任使用本项目仅适用于你拥有或获授权处理的内容请遵守当地法规。【免费下载链接】watermarks-removerA privacy-first app that strips AI watermarks from content you own.项目地址: https://gitcode.com/gh_mirrors/wa/watermarks-remover创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表