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

全方位代码检查工具(Lint everything From A to Z)
项目链接:
| 平台 | 最新版本 |
|---|---|
| GitHub | |
| DockerHub |
AZLint的主要目的是将尽可能多的代码检查工具(linters)捆绑到单个Docker镜像中,并提供便捷的命令行接口(CLI)实现批量调用。
它可作为SuperLinter和MegaLinter的补充工具。这些元检查工具非常出色,但AZLint具备它们缺失的部分特性。
需要说明的是,AZLint最初主要用于个人使用,但欢迎大家使用并报告发现的问题 😉。
!azlint演示
注意:本章示例使用:latest标签。实际使用时建议将:latest替换为具体版本号。
可在DockerHub的标签页查看所有可用标签,或在GitHub的发布页查看所有项目版本。
检查当前目录文件:
docker run -itv "$PWD:/project:ro" matejkosiarcik/azlint:latest lint
格式化当前目录文件:
docker run -itv "$PWD:/project" matejkosiarcik/azlint:latest fmt
查看帮助信息:
$ docker run matejkosiarcik/azlint:latest --help Usage: azlint <command> [options…] [dir] Commands: azlint lint 检查项目(默认命令) azlint fmt 格式化项目(自动修复) 位置参数: dir 项目目录路径 [字符串] [默认值: "."] 选项: -h, --help 显示帮助信息 [布尔值] -V, --version 显示版本信息 [布尔值] -v, --verbose 详细日志(可叠加,最多-vvv) [计数] -q, --quiet 减少日志输出 [布尔值] --only-changed 仅分析变更文件(要求项目为Git仓库) [布尔值] -n, --dry-run 模拟运行 [布尔值] --color 彩色输出 [字符串] [可选值: "auto", "never", "always"] [默认值: "auto"]
参考上述Linux & macOS示例,将$PWD替换为%cd%即可,例如:
docker run -itv "%cd%:/project:ro" matejkosiarcik/azlint:latest lint
azlint: image: matejkosiarcik/azlint:latest script: - lint
version: 2.1 workflows: version: 2 workflow: jobs: - azlint jobs: azlint: docker: - image: matejkosiarcik/azlint:latest steps: - checkout - run: lint
name: AZLint permissions: read-all on: push: branches: - main pull_request: jobs: azlint: name: AZLint runs-on: ubuntu-latest container: image: matejkosiarcik/azlint:latest options: --user root steps: - name: 检出代码 uses: actions/checkout@v3 with: fetch-depth: 0 # 需要完整Git历史以获取正确的变更文件列表 - name: 运行AZLint run: lint
AZLint通过带AZLINT_前缀的环境变量进行配置。
AZLint默认在以下位置查找配置文件:[git-root]/和[git-root]/.config/。可通过AZLINT_CONFIG_DIR=some/config/directory指定自定义配置目录(注意:路径相对于[git-root])。
AZLint会自动查找配置文件并传递给检查工具。如需为特定检查工具指定自定义配置文件,可设置AZLINT_FOO_CONFIG_FILE=some/path/file.json(注意1:将FOO替换为具体检查工具名称;注意2:文件路径相对于指定的配置目录)。
可通过设置环境变量AZLINT_FOO=false禁用特定检查工具或格式化工具(注意:将FOO替换为具体检查工具名称)。
关于检查工具名称的说明:若检查工具名为foo-bar,对应的环境变量需命名为FOO_BAR(即大写并将连字符替换为下划线)。
| 工具 | 链接 | 禁用方式 | 检查文件 | fmt支持 |
|---|---|---|---|---|
| editorconfig-checker | GitHub 文档 | VALIDATE_EDITORCONFIG_CHECKER | * | ❌ |
| eclint | GitHub | VALIDATE_ECLINT | * | ❌ |
| Git check-ignore(自定义) | - | VALIDATE_GITIGNORE | * | ✅ |
| jscpd | GitHub | VALIDATE_JSCPD | * | ❌ |
| 工具 | 链接 | 禁用方式 | 检查文件 | fmt支持 |
|---|---|---|---|---|
| dotenv-linter | GitHub 文档 | VALIDATE_DOTENV | *.env | ❌ |
| jsonlint | GitHub 在线试用 | VALIDATE_JSONLINT | *.json | ❌* |
| prettier | GitHub 文档 | VALIDATE_PRETTIER | *.{json,yml,css,html} | ✅ |
| stoml | GitHub | VALIDATE_STOML | *.{cfg,ini,toml} | ❌ |
| tomljson (go-toml) | GitHub | VALIDATE_TOMLJSON | *.toml | ❌ |
| yamllint | GitHub 文档 | VALIDATE_YAMLLINT | *.{yml,yaml} | ❌ |
Jsonlint - 格式化功能与prettier冲突,因此已禁用。
这些工具并非真正的"检查工具",而是原生包管理器,通过dry-run标志仅尝试安装依赖而不实际安装,用于验证配置文件在对应包管理器中的可用性。
| 工具 | 链接 | 禁用方式 | 检查文件 | fmt支持 |
|---|---|---|---|---|
| brew-bundle | GitHub 手册 | VALIDATE_BREW_BUNDLE | Brewfile | ❌ |
| composer-install | 文档 | VALIDATE_COMPOSER_INSTALL | composer.json | ❌ |
| pip-install | 文档 | VALIDATE_PIP_INSTALL | requirements.txt | ❌ |
| npm-install | 文档 | VALIDATE_NPM_INSTALL | package.json | ❌ |
| npm-ci | 文档 | VALIDATE_NPM_CI | package.json & package-lock.json | ❌ |
包管理器文件的额外验证工具,检查推荐但非必需的配置规则。
| 工具 | 链接 | 禁用方式 | 检查文件 | fmt支持 |
|---|---|---|---|---|
| composer-normalize | GitHub 博客 | VALIDATE_COMPOSER_NORMALIZE | composer.json | ✅ |
| composer-validate | 文档 | VALIDATE_COMPOSER_VALIDATE | composer.json | ❌ |
| package-json-validator | GitHub | VALIDATE_PACKAGE_JSON | package.json | ❌ |
| 工具 | 链接 | 禁用方式 | 检查文件 | fmt支持 |
|---|---|---|---|---|
| CircleCI CLI lint | 文档 GitHub | VALIDATE_CIRCLECI_VALIDATE | .circleci/config.yml | ❌ |
| gitlab-ci-lint | GitHub | VALIDATE_GITLABCI_LINT | .gitlab-ci.yml | ❌ |
| gitlab-ci-validate | GitHub | VALIDATE_GITLABCI_VALIDATE | .gitlab-ci.yml | ❌ |
| 工具 | 链接 | 禁用方式 | 检查文件 | fmt支持 |
|---|---|---|---|---|
| checkmake | GitHub | VALIDATE_CHECKMAKE | Makefile等 | ❌ |
| BSD Make | 手册 | VALIDATE_BMAKE | Makefile等 | ❌ |
| GNU Make | 文档 手册 | VALIDATE_GMAKE | Makefile等 | ❌ |
| 工具 | 链接 | 禁用方式 | 检查文件 | fmt支持 |
|---|---|---|---|---|
| dockerfilelint | GitHub 在线试用 | VALIDATE_DOCKERFILELINT | Dockerfile等 | ❌ |
| hadolint | GitHub | VALIDATE_HADOLINT | Dockerfile等 | ❌ |
| 工具 | 链接 | 禁用方式 | 检查文件 | fmt支持 |
|---|---|---|---|---|
| HTMLHint | GitHub | VALIDATE_HTMLHINT | *.{html,htm} | ❌ |
| htmllint | GitHub | VALIDATE_HTMLLINT | *.{html,htm} | ❌ |
| SVGLint | GitHub | VALIDATE_SVGLINT | *.svg | ❌ |
| xmllint | GitLab 文档 手册 | VALIDATE_XMLLINT | *.xml | ✅ |
| 工具 | 链接 | 禁用方式 | 检查文件 | fmt支持 |
|---|---|---|---|---|
| markdown-link-check | GitHub | VALIDATE_MARKDOWN_LINK_CHECK | *.md | ❌ |
| markdownlint | GitHub | VALIDATE_MARKDOWNLINT | *.md | ✅ |
| markdownlint (mdl) | [GitHub |
免费版仅支持 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