本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

许可证合规工具,用于检测Python PyPI包的许可证名称和类型,支持多种格式的依赖文件(Python、Clojure、JavaScript、iOS、Android等),能够识别公共领域、许可型、copyleft等各类开源许可证,帮助开发团队确保项目依赖的许可证合规性,降低法律风险。
requirements.txt(检测许可证名称和类型)覆盖各类免费/自由和开源许可证:
支持排除特定包、自定义报告格式、设置失败条件(如检测到copyleft许可证时返回非零退出码)等。
从Docker Hub拉取:
docker pull pilosus/pip-license-checker
可指定版本标签(如0.41.0)或使用latest。
git clone [***] cd pip-license-checker docker build -t pilosus/pip-license-checker .
直接指定Python包名及版本范围:
docker run -it --rm pilosus/pip-license-checker \ java -jar app.jar 'aiostream==0.4.3' 'pygit2' 'aiohttp>3.7.1'
需检查本地文件(如requirements.txt)时,使用-v挂载主机目录至容器内/volume:
docker run -v `pwd`:/volume \ -e GITHUB_TOKEN=your-gh-token \ # 可选,用于提高GitHub API速率限制 -it --rm pilosus/pip-license-checker \ java -jar app.jar \ --exclude 'pylint.*' \ # 排除匹配正则的包 --requirements '/volume/requirements.txt' \ # Python需求文件 --external '/volume/licenses.csv' \ # 外部许可证文件 --fail StrongCopyleft \ # 检测到StrongCopyleft时失败 --fails-only \ # 仅显示失败项 --verbose # 详细输出
以下示例基于源码编译的lein run,独立jar包替换为java -jar pip-license-checker-[version]-standalone.jar。
lein run
lein run piny==0.6.0 # 指定版本 lein run aiostream # 最新稳定版
lein run --requirements resources/requirements.txt
输出示例:
aiohttp:3.7.2 Apache Software License Permissive piny:0.6.0 MIT License Permissive aiostream:0.4.3 GPLv3 StrongCopyleft mo-collections:4.30.21121 Mozilla Public License 2.0 (MPL 2.0) WeakCopyleft ...
排除名称匹配aio.*的包:
lein run --requirements resources/requirements.txt --exclude 'aio.*'
lein run --requirements resources/requirements.txt --report-format json-pretty --totals
| 选项 | 描述 | 示例 |
|---|---|---|
-v, --verbose | 详细程度:error(-v)、info(-vv)、debug(-vvv) | -vv |
-r, --requirements FILE | Python需求文件路径 | --requirements req.txt |
-x, --external FILE | 外部许可证文件路径 | --external licenses.csv |
--external-format FORMAT | 外部文件格式:csv/cocoapods/gradle | --external-format cocoapods |
--fail TYPE | 许可证类型检测失败条件 | --fail StrongCopyleft |
--exclude REGEX | 排除包名匹配的正则 | --exclude 'aio.*' |
--report-format FORMAT | 报告格式:stdout/json/csv | --report-format json-pretty |
--github-token TOKEN | GitHub令牌(提高API速率) | --github-token ghp_xxx |
| 类型 | 说明 | 示例许可证 |
|---|---|---|
| NetworkCopyleft | 网络copyleft | GNU Affero GPL |
| StrongCopyleft | 强copyleft | GNU GPL |
| WeakCopyleft | 弱copyleft | MPL、EPL |
| Copyleft | 所有copyleft类型 | - |
| Permissive | 许可型 | MIT、BSD |
| Other | 未识别/专有 | 自定义EULA |
| Error | 许可证未找到 | - |
默认跳过表头,包名列索引0,许可证名列索引1,可通过--external-options自定义:
lein run -x data.csv --external-options '{:skip-header false :package-column-index 1}'
指定外部格式为cocoapods:
lein run -x Pods-Acknowledgements.plist --external-format cocoapods
指定外部格式为gradle:
lein run -x licenses.json --external-format gradle
工具会解析包版本(类似pip),并仅检查解析版本的许可证。
工具仅检查显式依赖,可通过pip freeze生成完整依赖列表:
pip freeze > all-reqs.txt && lein run -r all-reqs.txt
不支持,需通过Q2方法生成实际安装的依赖列表。
工具按"原样"提供,不保证信息准确性,不构成法律建议,不对使用造成的损害负责。
Copyright © 2020-2025 Vitaly Samigullin
基于Eclipse Public License 2.0或GPL-2.0 WITH Classpath-exception-2.0许可。SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
免费版仅支持 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 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429