oxsecurity/megalinter
GitHub: oxsecurity/megalinter
一款多语言代码质量与安全扫描工具,通过集成多种 Linter 在 CI 或本地统一检测问题并输出报告。
Stars: 2463 | Forks: 291
继续查看表格内容:
|
| [**TOML**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/rst.md) | [**toml-lint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/rst_rstfmt.md)
[_TOML_TOML_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/rst_rstfmt.md) | | |
| [**TERRAFORM**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/xml.md) | [**tflint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/xml_xmllint.md)
[_TERRAFORM_TFLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/xml_xmllint.md) | [](https://jsonplaceholder.typicode.com/https://github.com/terraform-linters/tflint) [](https://jsonplaceholder.typicode.com/https://github.com/terraform-linters/tflint) | |
| [**TERRAFORM**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_prettier.md) | [**checkov**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_prettier.md)
[_TERRAFORM_CHECKOV_](https://img.shields.io/github/stars/prettier/prettier?cacheSeconds=3600) | [](https://jsonplaceholder.typicode.com/https://github.com/bridgecrewio/checkov) [](https://jsonplaceholder.typicode.com/https://github.com/bridgecrewio/checkov) | |
| [**TERRAFORM**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_yamllint.md) | [**tfsec**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_yamllint.md)
[_TERRAFORM_TFSEC_](https://img.shields.io/github/stars/adrienverge/yamllint?cacheSeconds=3600) | [](https://jsonplaceholder.typicode.com/https://github.com/aquasecurity/tfsec) [](https://jsonplaceholder.typicode.com/https://github.com/aquasecurity/tfsec) | |
| [**TERRAFORM**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_v8r.md) | [**checkov**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_v8r.md)
[_TERRAFORM_CHECKOV_](https://img.shields.io/github/stars/chris48s/v8r?cacheSeconds=3600) | [](https://jsonplaceholder.typicode.com/https://github.com/bridgecrewio/checkov) [](https://jsonplaceholder.typicode.com/https://github.com/bridgecrewio/checkov) | |
| [**YAML**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/action_actionlint.md) | [**yamllint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/action_actionlint.md)
[_YAML_YAMLLINT_](https://img.shields.io/github/stars/rhysd/actionlint?cacheSeconds=3600) | | ### 工具格式 | | Tooling Format | Linter | Additional | |:--------------------------------------------------------------------------------------------------------------------------------------------------------------------:|-------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/ansible.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/ansible_ansible_lint.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/ansible_ansible_lint.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/ansible/ansible-lint?cacheSeconds=3600) | [**dockerfilelint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/api.md)
[_DOCKERFILE_DOCKERFILELINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/api_spectral.md) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/api_spectral.md) | [**hadolint**](https://img.shields.io/github/stars/stoplightio/spectral?cacheSeconds=3600)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/arm.md) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/arm_arm_ttk.md) | [**dockerlint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/arm_arm_ttk.md)
[_DOCKERFILE_DOCKERLINT_](https://img.shields.io/github/stars/Azure/arm-ttk?cacheSeconds=3600) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bicep.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bicep_bicep_linter.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bicep_bicep_linter.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/Azure/bicep?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cloudformation.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cloudformation_cfn_lint.md) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cloudformation_cfn_lint.md) | [**hadolint**](https://img.shields.io/github/stars/aws-cloudformation/cfn-lint?cacheSeconds=3600)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/dockerfile.md) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/dockerfile_hadolint.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/dockerfile_hadolint.md)
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/hadolint/hadolint?cacheSeconds=3600) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/editorconfig.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/editorconfig_editorconfig_checker.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/editorconfig_editorconfig_checker.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/editorconfig-checker/editorconfig-checker?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/gherkin.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/gherkin_gherkin_lint.md) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/gherkin_gherkin_lint.md) | [**hadolint**](https://img.shields.io/github/stars/gherkin-lint/gherkin-lint?cacheSeconds=3600)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes.md) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_kubeconform.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_kubeconform.md)
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/yannh/kubeconform?cacheSeconds=3600) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_helm.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_helm.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/helm/helm?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_kubescape.md) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_kubescape.md) | [**hadolint**](https://img.shields.io/github/stars/kubescape/kubescape?cacheSeconds=3600)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/puppet.md) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/puppet_puppet_lint.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/puppet_puppet_lint.md)
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/puppetlabs/puppet-lint?cacheSeconds=3600) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/robotframework_robocop.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/robotframework_robocop.md)
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/MarketSquare/robotframework-robocop?cacheSeconds=3600) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/snakemake_snakemake.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/snakemake_snakemake.md)
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/snakemake/snakemake?cacheSeconds=3600) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/snakemake_snakefmt.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/snakemake_snakefmt.md)
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/snakemake/snakefmt?cacheSeconds=3600) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/tekton_tekton_lint.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/tekton_tekton_lint.md)
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/IBM/tekton-lint?cacheSeconds=3600) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_tflint.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_tflint.md)
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/terraform-linters/tflint?cacheSeconds=3600) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terrascan.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terrascan.md)
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/tenable/terrascan?cacheSeconds=3600) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terragrunt.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terragrunt.md)
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/gruntwork-io/terragrunt?cacheSeconds=3600) | | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform.md) | [**hadol**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terraform_fmt.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terraform_fmt.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/hashicorp/terraform?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/copypaste.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/copypaste_jscpd.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/kucherenko/jscpd?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_checkov.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/bridgecrewio/checkov?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_devskim.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/microsoft/DevSkim?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_dustilock.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/Checkmarx/dustilock?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_git_diff.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/git/git?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_gitleaks.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/gitleaks/gitleaks?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_grype.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
| [**DOCKERFILE**](https://img.shields.io/github/stars/anchore/grype?cacheSeconds=3600) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
|
| [**RST**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/rst.md) | [**rstfmt**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/rst_rstfmt.md)
[_RST_RSTFMT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/rst_rstfmt.md) |  | |
| [**XML**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/xml.md) | [**xmllint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/xml_xmllint.md)
[_XML_XMLLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/xml_xmllint.md) |  | |
| [**YAML**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml.md) | [**prettier**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_prettier.md)
[_YAML_PRETTIER_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_prettier.md) | [](https://github.com/prettier/prettier)  | |
| [**YAML**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml.md) | [**yamllint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_yamllint.md)
[_YAML_YAMLLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_yamllint.md) | [](https://github.com/adrienverge/yamllint) | |
| [**YAML**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml.md) | [**v8r**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_v8r.md)
[_YAML_V8R_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_v8r.md) | [](https://github.com/chris48s/v8r) | ### 工具格式 | | Tooling format | Linter | Additional | |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|-------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| |
| [**ACTION**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/action.md) | [**actionlint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/action_actionlint.md)
[_ACTION_ACTIONLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/action_actionlint.md) | [](https://github.com/rhysd/actionlint) | |
| [**ANSIBLE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/ansible.md) | [**ansible-lint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/ansible_ansible_lint.md)
[_ANSIBLE_ANSIBLE_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/ansible_ansible_lint.md) | [](https://github.com/ansible/ansible-lint)  | |
| [**API**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/api.md) | [**spectral**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/api_spectral.md)
[_API_SPECTRAL_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/api_spectral.md) |  [](https://github.com/stoplightio/spectral)  | |
| [**ARM**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/arm.md) | [**arm-ttk**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/arm_arm_ttk.md)
[_ARM_ARM_TTK_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/arm_arm_ttk.md) | [](https://github.com/Azure/arm-ttk) | |
| [**BICEP**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bicep.md) | [**bicep_linter**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bicep_bicep_linter.md)
[_BICEP_BICEP_LINTER_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bicep_bicep_linter.md) | [](https://github.com/Azure/bicep) | |
| [**CLOUDFORMATION**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cloudformation.md) | [**cfn-lint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cloudformation_cfn_lint.md)
[_CLOUDFORMATION_CFN_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cloudformation_cfn_lint.md) | [](https://github.com/aws-cloudformation/cfn-lint)  | |
| [**DOCKERFILE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/dockerfile.md) | [**hadolint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/dockerfile_hadolint.md)
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/dockerfile_hadolint.md) | [](https://github.com/hadolint/hadolint)  | |
| [**EDITORCONFIG**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/editorconfig.md) | [**editorconfig-checker**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/editorconfig_editorconfig_checker.md)
[_EDITORCONFIG_EDITORCONFIG_CHECKER_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/editorconfig_editorconfig_checker.md) | [](://github.com/editorconfig-checker/editorconfig-checker) | |
| [**GHERKIN**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/gherkin.md) | [**gherkin-lint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/gherkin_gherkin_lint.md)
[_GHERKIN_GHERKIN_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/gherkin_gherkin_lint.md) | [](https://github.com/gherkin-lint/gherkin-lint) | |
| [**KUBERNETES**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes.md) | [**kubeconform**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_kubeconform.md)
[_KUBERNETES_KUBECONFORM_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_kubeconform.md) | [](https://github.com/yannh/kubeconform) | |
| [**KUBERNETES**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes.md) | [**helm**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_helm.md)
[_KUBERNETES_HELM_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_helm.md) | [](https://github.com/helm/helm) | |
| [**KUBERNETES**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes.md) | [**kubescape**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_kubescape.md)
[_KUBERNETES_KUBESCAPE_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_kubescape.md) | [](https://github.com/kubescape/kubescape)  | |
| [**PUPPET**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/puppet.md) | [**puppet-lint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/puppet_puppet_lint.md)
[_PUPPET_PUPPET_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/puppet_puppet_lint.md) |  [](https://github.com/puppetlabs/puppet-lint)  | |
| [**ROBOTFRAMEWORK**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/robotframework.md) | [**robocop**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/robotframework_robocop.md)
[_ROBOTFRAMEWORK_ROBOCOP_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/robotframework_robocop.md) | [](https://github.com/MarketSquare/robotframework-robocop)   | |
| [**SNAKEMAKE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/snakemake.md) | [**snakemake**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/snakemake_snakemake.md)
[_SNAKEMAKE_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/snakemake_snakemake.md) | [](https://github.com/snakemake/snakemake) | |
| [**SNAKEMAKE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/snakemake.md) | [**snakefmt**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/snakemake_snakefmt.md)
[_SNAKEMAKE_SNAKEFMT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/snakemake_snakefmt.md) | [](https://github.com/snakemake/snakefmt)  | |
| [**TEKTON**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/tekton.md) | [**tekton-lint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/tekton_tekton_lint.md)
[_TEKTON_TEKTON_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/tekton_tekton_lint.md) | [](https://github.com/IBM/tekton-lint) | |
| [**TERRAFORM**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform.md) | [**tflint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_tflint.md)
[_TERRAFORM_TFLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_tflint.md) | [](https://github.com/terraform-linters/tflint)  | |
| [**TERRAFORM**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform.md) | [**terrascan**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terrascan.md)
[_TERRAFORM_TERRASCAN_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terrascan.md) |   [](https://github.com/tenable/terrascan)  | |
| [**TERRAFORM**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform.md) | [**terragrunt**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terragrunt.md)
[_TERRAFORM_TERRAGRUNT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terragrunt.md) | [](https://github.com/gruntwork-io/terragrunt)  | |
| [**TERRAFORM**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform.md) | [**terraform-fmt**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terraform_fmt.md)
[_TERRAFORM_TERRAFORM_FMT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terraform_fmt.md) | [](https://github.com/hashicorp/terraform)  | ### 其他 | | Code quality checker | Linter | Additional | |:-------------------------------------------------------------------------------------------------------------------------------------------------------------------:|-----------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| |
| [**COPYPASTE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/copypaste.md) | [**jscpd**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/copypaste_jscpd.md)
[_COPYPASTE_JSCPD_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/copypaste_jscpd.md) | [](https://github.com/kucherenko/jscpd) | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**checkov**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_checkov.md)
[_REPOSITORY_CHECKOV_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_checkov.md) | [](https://github.com/bridgecrewio/checkov)  | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**devskim**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_devskim.md)
[_REPOSITORY_DEVSKIM_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_devskim.md) | [](https://github.com/microsoft/DevSkim)  | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**dustilock**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_dustilock.md)
[_REPOSITORY_DUSTILOCK_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_dustilock.md) | [](https://github.com/Checkmarx/dustilock)  | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**git_diff**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_git_diff.md)
[_REPOSITORY_GIT_DIFF_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_git_diff.md) | [](https://github.com/git/git) | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**gitleaks**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_gitleaks.md)
[_REPOSITORY_GITLEAKS_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_gitleaks.md) | [](https://github.com/gitleaks/gitleaks)  | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**grype**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_grype.md)
[_REPOSITORY_GRYPE_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_grype.md)  [](https://github.com/anchore/grype)  | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**kics**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md)
[_REPOSITORY_KICS_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | [](https://github.com/checkmarx/kics)  | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**ls-lint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_ls_lint.md)
[_REPOSITORY_LS_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_ls_lint.md) | [](https://github.com/loeffel-io/ls-lint) | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**secretlint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_secretlint.md)
[_REPOSITORY_SECRETLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_secretlint.md) | [](https://github.com/secretlint/secretlint)  | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**semgrep**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_semgrep.md)
[_REPOSITORY_SEMGREP_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_semgrep.md) | [](https://github.com/returntocorp/semgrep)  | |
| [**REPOSITORY**](LINK_URL_616/>) | [**syft**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_syft.md)
[_REPOSITORY_SYFT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_syft.md) | [](https://github.com/anchore/syft)  | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**trivy**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_trivy.md)
[_REPOSITORY_TRIVY_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_trivy.md) |  [](https://github.com/aquasecurity/trivy)  | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**trivy-sbom**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_trivy_sbom.md)
[_REPOSITORY_TRIVY_SBOM_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_trivy_sbom.md) |  [](https://github.com/aquasecurity/trivy)  | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**trufflehog**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_trufflehog.md)
[_REPOSITORY_TRUFFLEHOG_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_trufflehog.md) | [](https://github.com/trufflesecurity/trufflehog) | |
| [**REPOSITORY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository.md) | [**kingfisher**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kingfisher.md)
[_REPOSITORY_KINGFISHER_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kingfisher.md) | [](https://github.com/mongodb/kingfisher)  | |
| [**SPELL**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell.md) | [**cspell**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_cspell.md)
[_SPELL_CSPELL_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_cspell.md) | [](https://github.com/streetsidesoftware/cspell) | |
| [**SPELL**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell.md) | [**proselint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_proselint.md)
[_SPELL_PROSELINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_proselint.md) | [](https://github.com/amperser/proselint) | |
| [**SPELL**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell.md) | [**vale**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_vale.md)
[_SPELL_VALE_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_vale.md) | [](https://github.com/errata-ai/vale) | |
| [**SPELL**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell.md) | [**lychee**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_lychee.md)
[_SPELL_LYCHEE_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_lychee.md) | [](https://github.com/lycheeverse/lychee) | |
| [**SPELL**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell.md) | [**codespell**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_codespell.md)
[_SPELL_CODESPELL_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_codespell.md) | [](https://github.com/codespell-project/codespell)  | The following instructions examples are using latest MegaLinter stable version (**v9** , always corresponding to the [latest release](https://github.com/oxsecurity/megalinter/releases)) - Docker image: `oxsecurity/megalinter:v9` - GitHub Action: `oxsecurity/megalinter@v9` You can also use **beta** version (corresponding to the content of main branch) - Docker image: `oxsecurity/megalinter:beta` - GitHub Action: `oxsecurity/megalinter@beta` ``` --- - name: linting plan: - get: repo - task: linting config: platform: linux image_resource: type: docker-image source: repository: oxsecurity/megalinter tag: v9 inputs: - name: repo run: path: bash args: - -cxe - | cd repo export DEFAULT_WORKSPACE=$(pwd) bash -ex /entrypoint.sh ## doing this because concourse doesn't work as other CI systems # params: # PARALLEL: true # DISABLE: SPELL # APPLY_FIXES: all # DISABLE_ERRORS: true # VALIDATE_ALL_CODEBASE: true ``` OR #### 将其作为可重用任务使用 Create a reusable Concourse task that can be used with multiple pipelines. 1. Create task file `task-linting.yaml` ``` --- platform: linux image_resource: type: docker-image source: repository: oxsecurity/megalinter tag: v9 inputs: - name: repo ## 如果需要将报告作为任务输出,请取消注释以下内容 # output: # - name: reports # path: repo/megalinter-reports run: path: bash args: - -cxe - | cd repo export DEFAULT_WORKSPACE=$(pwd) bash -ex /entrypoint.sh ``` 2. Use that `task-linting.yaml` task in your pipeline. Note: 1. Make sure `task-linting.yaml` is available in the `repo` input at the repository root. 2. Task `output` is **not** shown here. ``` resources: - name: linting plan: - get: repo - task: linting file: repo/task-linting.yaml # params: # PARALLEL: true # DISABLE: SPELL # APPLY_FIXES: all # DISABLE_ERRORS: true # VALIDATE_ALL_CODEBASE: true ``` | List of disabled descriptors keys [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | [**DISABLE_LINTERS**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | List of disabled linters keys [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | [**DISABLE_ERRORS_LINTERS**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | List of enabled but not blocking linters keys. All linters not in this list will be not blocking [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | [**ENABLE_ERRORS_LINTERS**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | List of enabled and blocking linters keys [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | [**ENABLE**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | List of enabled descriptors keys [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | [**ENABLE_LINTERS**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | List of enabled linters keys [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | **EXCLUDED_DIRECTORIES** | \[…many values…\] | List of excluded directory basenames. They're excluded at any nested level. | | **EXTENDS** | | Base `mega-linter.yml` config file(s) to extend local configuration from. Can be a single URL or a list of `.mega-linter.yml` config files URLs. Later files take precedence. | | **FAIL_IF_MISSING_LINTER_IN_FLAVOR** | `false` | If set to `true`, MegaLinter fails if a linter is missing in the selected flavor | | **FAIL_IF_UPDATED_SOURCES** | `false` | If set to `true`, MegaLinter fails if a linter or formatter has autofixed sources, even if there are no errors | | [**FILTER_REGEX_EXCLUDE**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-filtering.md) | `none` | Regular expression defining which files will be excluded from linting [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-filtering.md) .ex: `.*src/test.*`) | | [**FILTER_REGEX_INCLUDE**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-filtering.md) | `all` | Regular expression defining which files will be processed by linters [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-filtering.md) .ex: `.*src/.*`) | | **FLAVOR_SUGGESTIONS** | `true` | Provides suggestions about different MegaLinter flavors to use to improve runtime performances | | **FORMATTERS_DISABLE_ERRORS** | `true` | Formatter errors will be reported as errors (not warnings) if this variable is set to `false`. | | **GIT_AUTHORIZATION_BEARER** | | If set, calls git with **`Authorization: Bearer`+value** | | **GITHUB_WORKSPACE** | | Base directory for `REPORT_OUTPUT_FOLDER`, for user-defined linter rules location, for location of linted files if `DEFAULT_WORKSPACE` isn't set | | **IGNORE_GENERATED_FILES** | `false` If set to `true`, MegaLinter will skip files containing `@generated` marker but without `@not-generated` marker (more info at [https://generated.at](https://generated.at/)) | | **IGNORE_GITIGNORED_FILES** | `true` | If set to `true`, MegaLinter will skip files ignored by Git using the `.gitignore` file. | | **JAVASCRIPT_DEFAULT_STYLE** | `standard` | Javascript default style to check/apply. `standard`,`prettier` | | **LINTER_RULES_PATH** | `.github/linters` | Directory for all linter configuration rules.
Can be a local folder or a remote URL (e.g., `https://raw.githubusercontent.com/some_org/some_repo/mega-linter-rules`). | | **LOG_FILE** | `mega-linter.log` | The file name for outputting logs. All output is sent to the log file regardless of `LOG_LEVEL`. Use `none` to not generate this file. | | **LOG_LEVEL** | `INFO` | How much output the script will generate to the console. One of `INFO`, `DEBUG`, `WARNING` or `ERROR`. | | **MARKDOWN_DEFAULT_STYLE** | `markdownlint` | Markdown default style to check/apply. `markdownlint`, `remark-lint`, `rumdl` | | **MEGALINTER_CONFIG** | `.mega-linter.yml` | Name of MegaLinter configuration file. Can be defined remotely, in that case set this environment variable with the remote URL of `.mega-linter.yml` config file | | **MEGALINTER_FILES_TO_LINT** | \[\] | Comma-separated list of files to analyze. Using this variable will bypass other file listing methods | | **PARALLEL** | `true` | Process linters in parallel to improve overall MegaLinter performance. If true, linters of same language or formats are grouped in the same parallel process to avoid lock issues if fixing the same files | | **PARALLEL_PROCESS_NUMBER** | | All available cores are used by default. If there are too many, decrease the number of used cores to enhance performance (example: `4`). | | **PLUGINS** | \[\] | List of plugin urls to install and run during MegaLinter run | | **POST_COMMANDS** | \[\] | Custom bash commands to run after linters | | **PRE_COMMANDS** | \[\] | Custom bash commands to run before linters | | **PRINT_ALPACA** | `true` | Enable printing alpaca image to console | | **PRINT_ALL_FILES** | `false` | Display all files analyzed by the linter instead of only the number. | | **PYTHON_DEFAULT_STYLE** | `black` | Python default style to check/apply. `black`,`ruff` | | **REPORT_OUTPUT_FOLDER** | `${GITHUB_WORKSPACE}/megalinter-reports` | Directory for generating report files. Set to `none` to skip generating reports. | | **SECURED_ENV_VARIABLES** | \[\] | Additional list of secured environment variables to hide when calling linters. | | **SECURED_ENV_VARIABLES_DEFAULT** | MegaLinter & CI platforms sensitive variables | List of secured environment variables to hide when calling linters. [Default list](https://github.com/oxsecurity/megalinter/tree/main/docs/config-variables-security.md). This is not recommended to override this variable, use SECURED_ENV_VARIABLES | | **SHOW_ELAPSED_TIME** | `false` | Displays elapsed time in reports | | **SHOW_SKIPPED_LINTERS** | `true` | Displays all disabled linters MegaLinter could have run. | | **SKIP_CLI_LINT_MODES** | \[\] | Comma-separated list of cli_lint_modes. To use if you want to skip linters with some CLI lint modes (ex: `file,project`). Available values: `file`,`cli_lint_mode`,`project`. | | **SKIP_LINTER_OUTPUT_SANITIZATION** | `false` | By default, MegaLinter sanitizes the output of every external command using Gitleaks public rules.
If you are on a private and secured repo, you can improve performances by setting this variable to `true`, but it will mean that if a linter output contains a secret, it will be visible in log files | | **TYPESCRIPT_DEFAULT_STYLE** | `standard` | Typescript default style to check/apply. `standard`,`prettier` | | **VALIDATE_ALL_CODEBASE** | `true` | Will parse the entire repository and find all files to validate across all types. **NOTE:** When set to `false`, only **new** or **edited** files will be parsed for validation. | | | **output_variables** | 从命令输出中读取的 ENV 变量,并在 MegaLinter 的 ENV 上下文中重用,以便在后续命令中使用 | `[]` | | **tag** | 定义命令在哪个入口点运行(可用标签:`before_plugins`) | | | | **output_variables** | 从命令输出中读取的 ENV 变量,并在 MegaLinter 的 ENV 上下文中重用,以便在后续命令中使用 | `[]` | | **tag** | 定义命令在哪个入口点运行(可用标签:`after_plugins`) | | | | 风味 | 描述 | 内置 Linter | 信息 | |:--------------------------------------------------------------------------------------------------------------------------------------------------------:|:---:|:-----------------------------------------------------------------------|:----------------:|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| |
| [all](https://megalinter.io/beta/supported-linters/) | 默认 MegaLinter 风味 | 134 |   |
|
| [c_cpp](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/c_cpp.md) | 专为纯 C/C++ 项目优化 | 55 |   |
|
| [ci_light](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/ci_light.md) | 专为 CI 项目(Dockerfile、Jenkinsfile、JSON/YAML 模式、XML)优化 | 20 |   |
|
| [cupcake](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/cupcake.md) | MegaLinter 适用于最常用的语言 | 89 |   |
|
| [documentation](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/documentation.md) | 适用于文档项目的 MegaLinter | 48 |   |
|
| [dotnet](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/dotnet.md) | 专为 C、C++、C# 或 VB 项目优化 | 63 |   |
|
| [dotnetweb](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/dotnetweb.md) | 专为包含 JS/TS 的 C、C++、C# 或 VB 项目优化 | 72 |   |
|
| [formatters](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/formatters.md) | 仅包含格式化工具 | 19 |   |
|
| [go](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/go.md) | 专为 Go 项目优化 | 50 |   |
|
| [java](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/java.md) | 专为 Java 项目优化 | 53 |   |
|
| [javascript](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/javascript.md) | 专为 JavaScript 或 TypeScript 项目优化 | 58 |   |
|
| [php](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/php.md) | 专为 PHP 项目优化 | 53 |   |
|
| [python](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/python.md) | 专为 Python 项目优化 | 65 |   |
|
| [ruby](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/ruby.md) | 专为 Ruby 项目优化 | 49 |   |
|
| [rust](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/rust.md) | 专为 Rust 项目优化 | 49 |   |
|
| [salesforce](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/salesforce.md) | 专为 Salesforce 项目优化 | 55 |   |
|
| [security](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/security.md) | 专为安全优化 | 23 |   |
|
| [swift](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/swift.md) | 专为 Swift 项目优化 | 49 |   |
|
| [terraform](https://github.com/oxsecurity/megalinter/tree/main/docs/flavors/terraform.md) | 专为 Terraform 项目优化 | 53 |   |
如果需要新的风味,可以[提出问题](https://github.com/oxsecurity/megalinter/issues) :wink:
您还可以生成自己的[自定义风味](https://megalinter.io/beta/custom-flavors/),以仅包含您需要的 Linter。
| 名称 | 描述 | 作者 | 原始 URL |
|:----------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------:|:--------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [**jupyfmt**](https://github.com/kpj/jupyfmt#mega-linter-integration) | 不可妥协的 Jupyter 笔记本格式化程序 | [Kim Philipp Jablonski](https://github.com/kpj) | [描述符](https://raw.githubusercontent.com/kpj/jupyfmt/master/mega-linter-plugin-jupyfmt/jupyfmt.megalinter-descriptor.yml) |
| [**linkcheck**](https://github.com/shiranr/linkcheck) | 检查并验证 Markdown 链接是否存在且有效 | [Shiran Rubin](https://github.com/shiranr) | [描述符](https://raw.githubusercontent.com/shiranr/linkcheck/main/mega-linter-plugin-linkcheck/linkcheck.megalinter-descriptor.yml) |
| [**nitpick**](https://github.com/andreoliwa/nitpick#run-as-a-megalinter-plugin) | 用于跨多个与语言无关的项目强制统一设置的命令行工具和 flake8 插件 | [W. Augusto Andreoli](https://github.com/andreoliwa) | [描述符](https://raw.githubusercontent.com/andreoliwa/nitpick/master/mega-linter-plugin-nitpick/nitpick.megalinter-descriptor.yml) |
| [**mustache**](https://github.com/one-acre-fund/mega-linter-plugin-logstash) | 使用 [mustache](https://mustache.github.io/) 验证 Logstash 管道定义文件 | [Yann Jouanique](https://github.com/Yann-J) | [描述符](https://raw.githubusercontent.com/one-acre-fund/mega-linter-plugin-logstash/main/mega-linter-plugin-logstash/logstash.megalinter-descriptor.yml) |
| [**salt-lint**](https://github.com/ssc-services/mega-linter-plugin-salt) | 检查 Salt State 文件(SLS)的最佳实践和潜在改进 | [Joachim Grimm](https://github.com/grimmjo) | [描述符](https://raw.githubusercontent.com/ssc-services/mega-linter-plugin-salt/main/mega-linter-plugin-salt/salt.megalinter-descriptor.yml) |
| [**docker-compose-linter**](https://github.com/wesley-dean/mega-linter-plugin-dclint/blob/main/README.md) | Lint Docker Compose 文件 | [Wesley Dean](https://github.com/wesley-dean) | [描述符](https://github.com/wesley-dean/mega-linter-plugin-dclint/blob/main/mega-linter-plugin-dclint/dclint.megalinter-descriptor.yml) |
| [**repolinter**](https://github.com/wesley-dean/mega-linter-plugin-repolinter/blob/main/README.md) | 运行 TODO Group 的 repolinter 以查找存储库最佳实践 | [Wesley Dean](https://github.com/wesley-dean) | [描述符](https://github.com/wesley-dean/mega-linter-plugin-repolinter/blob/main/mega-linter-plugin-repolinter/repolinter.megalinter-descriptor.yml) |
| [**j2lint**](https://github.com/wesley-dean/mega-linter-plugin-j2lint/blob/main/README.md) | Lint Jinja 文件 | [Wesley Dean](https://github.com/wesley-dean) | [描述符](https://github.com/wesley-dean/mega-linter-plugin-j2lint/blob/main/mega-linter-plugin-j2lint/j2lint.megalinter-descriptor.yml) |
| [**fmlint**](https://github.com/wesley-dean/mega-linter-plugin-fmlint/blob/main/README.md) | Lint YAML 前言(Markdown 文档中的元数据) | [Wesley Dean](https://github.com/wesley-dean) | [描述符](https://github.com/wesley-dean/mega-linter-plugin-fmlint/blob/main/mega-linter-plugin-fmlint/fmlint.megalinter-descriptor.yml) |
提交 Pull Request 以让您的插件出现在此处 :)
### 使用外部插件
在 `.mega-linter.yml` 中将插件 URL 添加到 `PLUGINS` 属性。URL 必须以 "https://" 开头或采用 "file://\" 形式,其中 \ 指向有效的插件描述符文件。
#### 示例
```
PLUGINS:
- https://raw.githubusercontent.com/kpj/jupyfmt/master/mega-linter-plugin-jupyfmt/jupyfmt.megalinter-descriptor.yml
- file://.automation/test/mega-linter-plugin-test/test.megalinter-descriptor.yml
```
### 创建您自己的插件
您可以编写自己的描述符并将其作为插件在 MegaLinter 运行时加载。
- 描述符格式与 [MegaLinter 内置插件](https://github.com/oxsecurity/megalinter/plugin) 完全相同
- 插件描述文件必须命名为 **\*\*.megalinter-descriptor.yml** 并符合 [MegaLinter JSON Schema](https://github.com/oxsecurity/megalinter/blob/main/plugin/schema.json)
- 插件必须托管在包含 **\*\*/mega-linter-plugin-\*\*/** 的 URL 中
- 文件 URL 必须符合上述目录和文件命名约定
#### 限制
- 目前,仅支持 `install` 属性中 `dockerfile` 指令开头的 `RUN`
### 英文文章
| 文章 | 作者 |
|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------|
| [Looking for the best CI/CD Pipeline Linting Tool? Try MegaLinter!](https://medium.com/@SeasonedDeveloper/looking-for-the-best-ci-cd-pipeline-linting-tool-try-megalinter-d89c9eba850d){target=_blank} | [Seasoned Developer](https://medium.com/@SeasonedDeveloper){target=_blank} |
| [Integrating MegaLinter to Automate Linting Across Multiple Codebases. A Technical Description](https://medium.com/datamindedbe/integrating-megalinter-to-automate-linting-across-multiple-codebases-a-technical-description-a200bb235b71){target=_blank} | [Thorsten Foltz](https://www.linkedin.com/in/thorstenfoltz/){target=_blank} |
| [MegaLinter Performance Tuning for Maximum Efficiency](https://flexion.us/blog/megalinter-performance-tuning/){target=_blank} | [Wes Dean](https://github.com/wesley-dean){target=_blank} |
| [10 MegaLinter Tips and Tricks Unlock its Full Potential](https://flexion.us/blog/megalinter-tips-and-tricks/){target=_blank} | [Wes Dean](https://github.com/wesley-dean){target=_blank} |
| [30 Seconds to Setup MegaLinter: Your Go-To Tool for Automated Code Quality](https://medium.com/@caodanju/30-seconds-to-setup-megalinter-your-go-to-tool-for-automated-code-quality-and-iac-security-969d90a5a99c){target=_blank} | [Peng Cao](https://www.linkedin.com/in/peng-cao-83b6a2103/) |
| [Introducing MegaLinter: Streamlining Code Quality Checks Across Multiple Languages](https://cloudtuned.hashnode.dev/introducing-megalinter-streamlining-code-quality-checks-across-multiple-languages){target=_blank} | [Cloud Tuned](https://cloudtuned.hashnode.dev/){target=_blank} |
| [Infrastructure as Code GitHub Codespace Template](https://luke.geek.nz/azure/iac-github-codespace/){target=_blank} | [Luke Murray](https://www.linkedin.com/in/ljmurray/){target=_blank} |
| [5 ways MegaLinter upped our DevSecOps game](https://flexion.us/blog/5-ways-megalinter-upped-our-devsecops-game/){target=_blank} | [Wes Dean](https://github.com/wesley-dean){target=_blank} |
| [Achieve Code Consistency: MegaLinter Integration in Azure DevOps](https://techcommunity.microsoft.com/t5/azure-devops-blog/achieve-code-consistency-megalinter-integration-in-azure-devops/ba-p/3939448){target=_blank} | [Don Koning](https://techcommunity.microsoft.com/t5/user/viewprofilepage/user-id/2039143#profile) on [Microsoft Tech Community](https://techcommunity.microsoft.com/){target=_blank} |
| [MegaLinter in Azure DevOps](https://jamescook.dev/megalinter-in-azure-devops){target=_blank} | [James Cook](https://www.linkedin.com/in/cookjames/){target=_blank} |
| [Maximize your code consistency with Megalinter](https://codewithme.cloud/posts/2023/08/maximize-your-code-consistency-with-megalinter/){target=_blank} | [Tor Ivar Asbølmo](https://www.linkedin.com/in/torivara/){target=_blank} on [codewithme.cloud](https://codewithme.cloud){target=_blank} |
| [8 Tools to Scan Node.js Applications for Security Vulnerability](https://geekflare.com/nodejs-security-scanner/){target=_blank} | [Chandan Kumar](https://www.linkedin.com/in/chandank) on [GeekFlare.com](https://geekflare.com/){target=_blank} |
| [Use the Workflows JSON schema in your IDE](https://cloud.google.com/workflows/docs/use-workflows-json-schema-with-ide){target=_blank} | [Google Cloud](https://cloud.google.com/){target=_blank} |
| [Level up your Unity Packages with CI/CD](https://medium.com/@RunningMattress/level-up-your-unity-packages-with-ci-cd-9498d2791211){target=_blank} | [RunningMattress](https://medium.com/@RunningMattress){target=_blank} |
| [GitHub Actions: sharing your secrets with third-party actions](https://secure-git.guide/013_Sharing-GitHub-secrets-with-third-party-actions){target=_blank} | [Constantin Bosse](https://github.com/cgbosse) and [Stephen Hosom](https://github.com/hosom){target=_blank} |
| [Talk about the Kotlin plugins Kover, Ktlint and Detekt. Made for the AmsterdamJUG meetup.](https://www.slideshare.net/SimonedeGijt/pluginandplayv4amsterdamjugpptx-251796070){target=_blank} | [Simone de Gijt](https://github.com/SimonedeGijt){target=_blank} |
| [Linting - What is all the fluff about?](https://rse.shef.ac.uk/blog/2022-04-19-linting/){target=_blank} | [Neil Shepard](https://www.linkedin.com/in/neil-shephard-a43a83211/?originalSubdomain=uk), University Of Sheffield |
| [How to apply security at the source using GitOps](https://dev.to/minwi/how-to-apply-security-at-the-source-using-gitops-21bk){target=_blank} | [Edu Minguez](https://dev.to/minwi) |
| [How to linter basic things like trailing whitespaces and newlines](https://nklya.medium.com/hot-to-linter-basic-things-like-trailing-whitespaces-and-newlines-7b40da8f688d){target=_blank} | [Nicolai Antiferov](https://nklya.medium.com/) |
| [Node.js Coding Standard Tools with MegaLinter on Gitlab CI](https://javascript.plainenglish.io/node-js-coding-standard-tools-with-megalinter-on-gitlab-ci-a43b55915811){target=_blank} | [Albion Bame](https://www.linkedin.com/in/albion-bame/) |
| [Linting a Jekyll blog with MegaLinter](https://www.ayyjohn.com/posts/linting-a-jekyll-blog-with-mega-linter){target=_blank} | [Alec Johnson](https://www.linkedin.com/in/ayyjohn/) |
| [MegaLinter sells his soul and joins OX Security](https://nicolas.vuillamy.fr/megalinter-sells-his-soul-and-joins-ox-security-2a91a0027628){target=_blank} | [Nicolas Vuillamy](https://nvuillam.github.io) |
| [Limit your technical debt and secure your code base using MegaLinter](https://nicolas.vuillamy.fr/improve-uniformize-and-secure-your-code-base-with-megalinter-62ebab422c1){target=_blank} | [Nicolas Vuillamy](https://nvuillam.github.io) |
### 法文文章
| 文章 | 作者 |
|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------------------------------------------|
| [MegaLinter](https://blog.stephane-robert.info/docs/developper/autres-outils/linters/megalinter/){target=_blank} | [Stéphane Robert](https://www.linkedin.com/in/stephanerobert1/), [3DS OutScale](https://fr.outscale.com/){target=_blank} |
| [MegaLinter: un linter pour les gouverner tous](https://blog.wescale.fr/megalinter-un-linter-pour-les-gouverner-tous){target=_blank} | [Guillaume Arnaud](https://www.linkedin.com/in/guillaume-arnaud/), [WeScale](https://www.wescale.fr/){target=_blank} |
| [MegaLinter, votre meilleur ami pour un code de qualité](https://www.neosoft.fr/nos-publications/blog-tech/mega-linter-votre-meilleur-ami-pour-un-code-de-qualite/?utm_source=twitter&utm_medium=organic&utm_campaign=article-mega-linter){target=_blank} | [Thomas Sanson](https://github.com/ThomasSanson){target=_blank} |
### 日文文章
| 文章 | 作者 |
|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------------------------------------|
| [Try using MegaLinter](https://future-architect.github.io/articles/20231129a/?s=03){=_blank} | [Takashi Minayaga](https://future-architect.github.io/authors/%E5%AE%AE%E6%B0%B8%E5%B4%87%E5%8F%B2){target=_blank} |
### 视频
- [(Brazilian) Qualidade e Segurança em Código com MegaLinter: automatizando análises em MAUI com GitHub Actions](https://www.youtube.com/watch?v=0JGusPYE4zc), by [Canal dotNET](https://www.youtube.com/@CanaldotNET)
- [(Brazilian) MegaLinter: Como Automatizar a Qualidade do Código para Todas Plataformas](https://www.youtube.com/watch?v=YSdZ3atC2j4), by [Codando TV](https://www.youtube.com/@hackitectsplayground)
- [How to: Secrets scanning](https://youtu.be/iBMWAk5QIfM?si=EVcJilkz7Y2jdn6e&t=649), by [Hackitect's playground](https://www.youtube.com/@hackitectsplayground)
- [How to use MegaLinter with Jenkins](https://www.youtube.com/watch?v=KhkNf2tQ3hM), by [Darin Pope](https://www.linkedin.com/in/darinpope/) / [Cloudbees](https://www.cloudbees.com/)
- (FR) MegaLinter presentation at [DevCon 20 / Programmez Magazine](https://www.programmez.com/page-devcon/devcon-20-100-securite-qualite-du-code), by [Nicolas Vuillamy](https://github.com/nvuillam)
- Code quality - Ep01 - MegaLinter, one linter to rule them all, by [Bertrand Thomas](https://github.com/devpro)
- DevSecOps Webinar using MegaLinter, by [5.15 Technologies](https://www.515tech.com/){target=_blank}
- Ortelius Architecture Meeting, with a review of MegaLinter, by [Steve Taylor](https://github.com/sbtaylor15){target=_blank} from [Ortelius](https://ortelius.io/)
### 网站
- [analysis-tools.dev](https://analysis-tools.dev/tool/mega-linter){target=_blank}
- [awesome-linters](https://github.com/caramelomartins/awesome-linters#language-agnostic){target=_blank}
- [schemastore.org](https://www.schemastore.org/){target=_blank}
- [abhith.net](https://www.abhith.net/recommended/){target=_blank}
- [my-devops-lab.com](https://www.my-devops-lab.com/tools){target=_blank}
### Linter
- [checkmake](https://github.com/checkmake/checkmake?tab=readme-ov-file#megalinter){target=_blank}
- [checkstyle](https://checkstyle.org/index.html#Related_Tools_Active_Tools){target=_blank}
- [clj-kondo](https://github.com/borkdude/clj-kondo/blob/master/doc/ci-integration.md#github){target=_blank}
- [cljstyle](https://github.com/greglook/cljstyle/blob/main/doc/integrations.md){target=_blank}
- [cspell](https://github.com/streetsidesoftware/cspell/tree/master/packages/cspell#mega-linter){target=_blank}
- [detekt](https://detekt.dev/docs/intro){target=_blank}
- [djlint](https://djlint.com/docs/integrations/#megalinter){target=_blank}
- [dotenv-linter](https://dotenv-linter.github.io/#/integrations/mega_linter){target=_blank}
- [editorconfig-checker](https://github.com/editorconfig-checker/editorconfig-checker#mega-linter){target=_blank}
- [eslint](https://eslint.org/docs/latest/use/integrations#source-control){target=_blank}
- [eslint-plugin-jsonc](https://eslint.org/docs/latest/use/integrations#source-control){target=_blank}
- [hadolint](https://github.com/hadolint/hadolint/blob/master/docs/INTEGRATION.md#mega-linter){target=_blank}
- [htmlhint](https://htmlhint.com/integrations/task-runner/){target=_blank}
- [jscpd](https://github.com/kucherenko/jscpd#who-uses-jscpd){target=_blank}
- [kics](https://docs.kics.io/latest/integrations/){target=_blank}
- [ktlint](https://github.com/pinterest/ktlint#-with-continuous-integration){target=_blank}
- [lintr](https://lintr.r-lib.org/articles/continuous-integration.html){target=_blank}
- [npm-groovy-lint](https://nvuillam.github.io/npm-groovy-lint/#mega-linter){target=_blank}
- [npm-package-json-lint](https://npmpackagejsonlint.org/docs/integrations#megalinter){target=_blank}
- [pmd](https://pmd.sourceforge.io/pmd-6.55.0/pmd_userdocs_tools_ci.html){target=_blank}
- [rst-lint](https://github.com/twolfson/restructuredtext-lint/wiki/Integration-in-other-tools#integration-in-other-tools){target=_blank}
- [rstcheck](https://rstcheck.readthedocs.io/en/latest/usage/integration/#use-with-mega-linter){target=_blank}
- [rubocop](https://docs.rubocop.org/rubocop/integration_with_other_tools.html#mega-linter-integration){target=_blank}
- [scalafix](https://scalacenter.github.io/scalafix/docs/users/installation.html#plugins-for-other-build-tools){target=_blank}
- [secretlint](https://github.com/secretlint/secretlint#mega-linter){target=_blank}
## 许可证
- [GNU Affero General Public License](https://github.com/oxsecurity/megalinter/blob/main/LICENSE)
[_TOML_TOML_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/rst_rstfmt.md) | | |
[_TERRAFORM_TFLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/xml_xmllint.md) | [](https://jsonplaceholder.typicode.com/https://github.com/terraform-linters/tflint) [](https://jsonplaceholder.typicode.com/https://github.com/terraform-linters/tflint) | |
[_TERRAFORM_CHECKOV_](https://img.shields.io/github/stars/prettier/prettier?cacheSeconds=3600) | [](https://jsonplaceholder.typicode.com/https://github.com/bridgecrewio/checkov) [](https://jsonplaceholder.typicode.com/https://github.com/bridgecrewio/checkov) | |
[_TERRAFORM_TFSEC_](https://img.shields.io/github/stars/adrienverge/yamllint?cacheSeconds=3600) | [](https://jsonplaceholder.typicode.com/https://github.com/aquasecurity/tfsec) [](https://jsonplaceholder.typicode.com/https://github.com/aquasecurity/tfsec) | |
[_TERRAFORM_CHECKOV_](https://img.shields.io/github/stars/chris48s/v8r?cacheSeconds=3600) | [](https://jsonplaceholder.typicode.com/https://github.com/bridgecrewio/checkov) [](https://jsonplaceholder.typicode.com/https://github.com/bridgecrewio/checkov) | |
[_YAML_YAMLLINT_](https://img.shields.io/github/stars/rhysd/actionlint?cacheSeconds=3600) | | ### 工具格式 | | Tooling Format | Linter | Additional | |:--------------------------------------------------------------------------------------------------------------------------------------------------------------------:|-------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/ansible_ansible_lint.md) | | |
[_DOCKERFILE_DOCKERFILELINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/api_spectral.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/arm.md) | | |
[_DOCKERFILE_DOCKERLINT_](https://img.shields.io/github/stars/Azure/arm-ttk?cacheSeconds=3600) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bicep_bicep_linter.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cloudformation_cfn_lint.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/dockerfile.md) | | |
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/hadolint/hadolint?cacheSeconds=3600) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/editorconfig_editorconfig_checker.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/gherkin_gherkin_lint.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes.md) | | |
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/yannh/kubeconform?cacheSeconds=3600) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_helm.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_kubescape.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/puppet.md) | | |
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/puppetlabs/puppet-lint?cacheSeconds=3600) | | |
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/MarketSquare/robotframework-robocop?cacheSeconds=3600) | | |
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/snakemake/snakemake?cacheSeconds=3600) | | |
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/snakemake/snakefmt?cacheSeconds=3600) | | |
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/IBM/tekton-lint?cacheSeconds=3600) | | |
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/terraform-linters/tflint?cacheSeconds=3600) | | |
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/tenable/terrascan?cacheSeconds=3600) | | |
[_DOCKERFILE_HADOLINT_](https://img.shields.io/github/stars/gruntwork-io/terragrunt?cacheSeconds=3600) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terraform_fmt.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/copypaste_jscpd.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_checkov.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_devskim.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_dustilock.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_git_diff.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_gitleaks.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_grype.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | | |
[_RST_RSTFMT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/rst_rstfmt.md) |  | |
[_XML_XMLLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/xml_xmllint.md) |  | |
[_YAML_PRETTIER_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_prettier.md) | [](https://github.com/prettier/prettier)  | |
[_YAML_YAMLLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_yamllint.md) | [](https://github.com/adrienverge/yamllint) | |
[_YAML_V8R_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/yaml_v8r.md) | [](https://github.com/chris48s/v8r) | ### 工具格式 | | Tooling format | Linter | Additional | |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|-------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| |
[_ACTION_ACTIONLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/action_actionlint.md) | [](https://github.com/rhysd/actionlint) | |
[_ANSIBLE_ANSIBLE_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/ansible_ansible_lint.md) | [](https://github.com/ansible/ansible-lint)  | |
[_API_SPECTRAL_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/api_spectral.md) |  [](https://github.com/stoplightio/spectral)  | |
[_ARM_ARM_TTK_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/arm_arm_ttk.md) | [](https://github.com/Azure/arm-ttk) | |
[_BICEP_BICEP_LINTER_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bicep_bicep_linter.md) | [](https://github.com/Azure/bicep) | |
[_CLOUDFORMATION_CFN_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cloudformation_cfn_lint.md) | [](https://github.com/aws-cloudformation/cfn-lint)  | |
[_DOCKERFILE_HADOLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/dockerfile_hadolint.md) | [](https://github.com/hadolint/hadolint)  | |
[_EDITORCONFIG_EDITORCONFIG_CHECKER_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/editorconfig_editorconfig_checker.md) | [](://github.com/editorconfig-checker/editorconfig-checker) | |
[_GHERKIN_GHERKIN_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/gherkin_gherkin_lint.md) | [](https://github.com/gherkin-lint/gherkin-lint) | |
[_KUBERNETES_KUBECONFORM_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_kubeconform.md) | [](https://github.com/yannh/kubeconform) | |
[_KUBERNETES_HELM_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_helm.md) | [](https://github.com/helm/helm) | |
[_KUBERNETES_KUBESCAPE_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kubernetes_kubescape.md) | [](https://github.com/kubescape/kubescape)  | |
[_PUPPET_PUPPET_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/puppet_puppet_lint.md) |  [](https://github.com/puppetlabs/puppet-lint)  | |
[_ROBOTFRAMEWORK_ROBOCOP_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/robotframework_robocop.md) | [](https://github.com/MarketSquare/robotframework-robocop)   | |
[_SNAKEMAKE_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/snakemake_snakemake.md) | [](https://github.com/snakemake/snakemake) | |
[_SNAKEMAKE_SNAKEFMT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/snakemake_snakefmt.md) | [](https://github.com/snakemake/snakefmt)  | |
[_TEKTON_TEKTON_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/tekton_tekton_lint.md) | [](https://github.com/IBM/tekton-lint) | |
[_TERRAFORM_TFLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_tflint.md) | [](https://github.com/terraform-linters/tflint)  | |
[_TERRAFORM_TERRASCAN_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terrascan.md) |   [](https://github.com/tenable/terrascan)  | |
[_TERRAFORM_TERRAGRUNT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terragrunt.md) | [](https://github.com/gruntwork-io/terragrunt)  | |
[_TERRAFORM_TERRAFORM_FMT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/terraform_terraform_fmt.md) | [](https://github.com/hashicorp/terraform)  | ### 其他 | | Code quality checker | Linter | Additional | |:-------------------------------------------------------------------------------------------------------------------------------------------------------------------:|-----------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| |
[_COPYPASTE_JSCPD_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/copypaste_jscpd.md) | [](https://github.com/kucherenko/jscpd) | |
[_REPOSITORY_CHECKOV_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_checkov.md) | [](https://github.com/bridgecrewio/checkov)  | |
[_REPOSITORY_DEVSKIM_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_devskim.md) | [](https://github.com/microsoft/DevSkim)  | |
[_REPOSITORY_DUSTILOCK_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_dustilock.md) | [](https://github.com/Checkmarx/dustilock)  | |
[_REPOSITORY_GIT_DIFF_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_git_diff.md) | [](https://github.com/git/git) | |
[_REPOSITORY_GITLEAKS_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_gitleaks.md) | [](https://github.com/gitleaks/gitleaks)  | |
[_REPOSITORY_GRYPE_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_grype.md)  [](https://github.com/anchore/grype)  | |
[_REPOSITORY_KICS_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kics.md) | [](https://github.com/checkmarx/kics)  | |
[_REPOSITORY_LS_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_ls_lint.md) | [](https://github.com/loeffel-io/ls-lint) | |
[_REPOSITORY_SECRETLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_secretlint.md) | [](https://github.com/secretlint/secretlint)  | |
[_REPOSITORY_SEMGREP_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_semgrep.md) | [](https://github.com/returntocorp/semgrep)  | |
[_REPOSITORY_SYFT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_syft.md) | [](https://github.com/anchore/syft)  | |
[_REPOSITORY_TRIVY_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_trivy.md) |  [](https://github.com/aquasecurity/trivy)  | |
[_REPOSITORY_TRIVY_SBOM_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_trivy_sbom.md) |  [](https://github.com/aquasecurity/trivy)  | |
[_REPOSITORY_TRUFFLEHOG_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_trufflehog.md) | [](https://github.com/trufflesecurity/trufflehog) | |
[_REPOSITORY_KINGFISHER_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/repository_kingfisher.md) | [](https://github.com/mongodb/kingfisher)  | |
[_SPELL_CSPELL_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_cspell.md) | [](https://github.com/streetsidesoftware/cspell) | |
[_SPELL_PROSELINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_proselint.md) | [](https://github.com/amperser/proselint) | |
[_SPELL_VALE_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_vale.md) | [](https://github.com/errata-ai/vale) | |
[_SPELL_LYCHEE_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_lychee.md) | [](https://github.com/lycheeverse/lychee) | |
[_SPELL_CODESPELL_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/spell_codespell.md) | [](https://github.com/codespell-project/codespell)  | The following instructions examples are using latest MegaLinter stable version (**v9** , always corresponding to the [latest release](https://github.com/oxsecurity/megalinter/releases)) - Docker image: `oxsecurity/megalinter:v9` - GitHub Action: `oxsecurity/megalinter@v9` You can also use **beta** version (corresponding to the content of main branch) - Docker image: `oxsecurity/megalinter:beta` - GitHub Action: `oxsecurity/megalinter@beta` ``` --- - name: linting plan: - get: repo - task: linting config: platform: linux image_resource: type: docker-image source: repository: oxsecurity/megalinter tag: v9 inputs: - name: repo run: path: bash args: - -cxe - | cd repo export DEFAULT_WORKSPACE=$(pwd) bash -ex /entrypoint.sh ## doing this because concourse doesn't work as other CI systems # params: # PARALLEL: true # DISABLE: SPELL # APPLY_FIXES: all # DISABLE_ERRORS: true # VALIDATE_ALL_CODEBASE: true ``` OR #### 将其作为可重用任务使用 Create a reusable Concourse task that can be used with multiple pipelines. 1. Create task file `task-linting.yaml` ``` --- platform: linux image_resource: type: docker-image source: repository: oxsecurity/megalinter tag: v9 inputs: - name: repo ## 如果需要将报告作为任务输出,请取消注释以下内容 # output: # - name: reports # path: repo/megalinter-reports run: path: bash args: - -cxe - | cd repo export DEFAULT_WORKSPACE=$(pwd) bash -ex /entrypoint.sh ``` 2. Use that `task-linting.yaml` task in your pipeline. Note: 1. Make sure `task-linting.yaml` is available in the `repo` input at the repository root. 2. Task `output` is **not** shown here. ``` resources: - name: linting plan: - get: repo - task: linting file: repo/task-linting.yaml # params: # PARALLEL: true # DISABLE: SPELL # APPLY_FIXES: all # DISABLE_ERRORS: true # VALIDATE_ALL_CODEBASE: true ``` | List of disabled descriptors keys [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | [**DISABLE_LINTERS**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | List of disabled linters keys [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | [**DISABLE_ERRORS_LINTERS**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | List of enabled but not blocking linters keys. All linters not in this list will be not blocking [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | [**ENABLE_ERRORS_LINTERS**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | List of enabled and blocking linters keys [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | [**ENABLE**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | List of enabled descriptors keys [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | [**ENABLE_LINTERS**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | List of enabled linters keys [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-activation.md) | | **EXCLUDED_DIRECTORIES** | \[…many values…\] | List of excluded directory basenames. They're excluded at any nested level. | | **EXTENDS** | | Base `mega-linter.yml` config file(s) to extend local configuration from. Can be a single URL or a list of `.mega-linter.yml` config files URLs. Later files take precedence. | | **FAIL_IF_MISSING_LINTER_IN_FLAVOR** | `false` | If set to `true`, MegaLinter fails if a linter is missing in the selected flavor | | **FAIL_IF_UPDATED_SOURCES** | `false` | If set to `true`, MegaLinter fails if a linter or formatter has autofixed sources, even if there are no errors | | [**FILTER_REGEX_EXCLUDE**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-filtering.md) | `none` | Regular expression defining which files will be excluded from linting [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-filtering.md) .ex: `.*src/test.*`) | | [**FILTER_REGEX_INCLUDE**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-filtering.md) | `all` | Regular expression defining which files will be processed by linters [(more info)](https://github.com/oxsecurity/megalinter/tree/main/docs/config-filtering.md) .ex: `.*src/.*`) | | **FLAVOR_SUGGESTIONS** | `true` | Provides suggestions about different MegaLinter flavors to use to improve runtime performances | | **FORMATTERS_DISABLE_ERRORS** | `true` | Formatter errors will be reported as errors (not warnings) if this variable is set to `false`. | | **GIT_AUTHORIZATION_BEARER** | | If set, calls git with **`Authorization: Bearer`+value** | | **GITHUB_WORKSPACE** | | Base directory for `REPORT_OUTPUT_FOLDER`, for user-defined linter rules location, for location of linted files if `DEFAULT_WORKSPACE` isn't set | | **IGNORE_GENERATED_FILES** | `false` If set to `true`, MegaLinter will skip files containing `@generated` marker but without `@not-generated` marker (more info at [https://generated.at](https://generated.at/)) | | **IGNORE_GITIGNORED_FILES** | `true` | If set to `true`, MegaLinter will skip files ignored by Git using the `.gitignore` file. | | **JAVASCRIPT_DEFAULT_STYLE** | `standard` | Javascript default style to check/apply. `standard`,`prettier` | | **LINTER_RULES_PATH** | `.github/linters` | Directory for all linter configuration rules.
Can be a local folder or a remote URL (e.g., `https://raw.githubusercontent.com/some_org/some_repo/mega-linter-rules`). | | **LOG_FILE** | `mega-linter.log` | The file name for outputting logs. All output is sent to the log file regardless of `LOG_LEVEL`. Use `none` to not generate this file. | | **LOG_LEVEL** | `INFO` | How much output the script will generate to the console. One of `INFO`, `DEBUG`, `WARNING` or `ERROR`. | | **MARKDOWN_DEFAULT_STYLE** | `markdownlint` | Markdown default style to check/apply. `markdownlint`, `remark-lint`, `rumdl` | | **MEGALINTER_CONFIG** | `.mega-linter.yml` | Name of MegaLinter configuration file. Can be defined remotely, in that case set this environment variable with the remote URL of `.mega-linter.yml` config file | | **MEGALINTER_FILES_TO_LINT** | \[\] | Comma-separated list of files to analyze. Using this variable will bypass other file listing methods | | **PARALLEL** | `true` | Process linters in parallel to improve overall MegaLinter performance. If true, linters of same language or formats are grouped in the same parallel process to avoid lock issues if fixing the same files | | **PARALLEL_PROCESS_NUMBER** | | All available cores are used by default. If there are too many, decrease the number of used cores to enhance performance (example: `4`). | | **PLUGINS** | \[\] | List of plugin urls to install and run during MegaLinter run | | **POST_COMMANDS** | \[\] | Custom bash commands to run after linters | | **PRE_COMMANDS** | \[\] | Custom bash commands to run before linters | | **PRINT_ALPACA** | `true` | Enable printing alpaca image to console | | **PRINT_ALL_FILES** | `false` | Display all files analyzed by the linter instead of only the number. | | **PYTHON_DEFAULT_STYLE** | `black` | Python default style to check/apply. `black`,`ruff` | | **REPORT_OUTPUT_FOLDER** | `${GITHUB_WORKSPACE}/megalinter-reports` | Directory for generating report files. Set to `none` to skip generating reports. | | **SECURED_ENV_VARIABLES** | \[\] | Additional list of secured environment variables to hide when calling linters. | | **SECURED_ENV_VARIABLES_DEFAULT** | MegaLinter & CI platforms sensitive variables | List of secured environment variables to hide when calling linters. [Default list](https://github.com/oxsecurity/megalinter/tree/main/docs/config-variables-security.md). This is not recommended to override this variable, use SECURED_ENV_VARIABLES | | **SHOW_ELAPSED_TIME** | `false` | Displays elapsed time in reports | | **SHOW_SKIPPED_LINTERS** | `true` | Displays all disabled linters MegaLinter could have run. | | **SKIP_CLI_LINT_MODES** | \[\] | Comma-separated list of cli_lint_modes. To use if you want to skip linters with some CLI lint modes (ex: `file,project`). Available values: `file`,`cli_lint_mode`,`project`. | | **SKIP_LINTER_OUTPUT_SANITIZATION** | `false` | By default, MegaLinter sanitizes the output of every external command using Gitleaks public rules.
If you are on a private and secured repo, you can improve performances by setting this variable to `true`, but it will mean that if a linter output contains a secret, it will be visible in log files | | **TYPESCRIPT_DEFAULT_STYLE** | `standard` | Typescript default style to check/apply. `standard`,`prettier` | | **VALIDATE_ALL_CODEBASE** | `true` | Will parse the entire repository and find all files to validate across all types. **NOTE:** When set to `false`, only **new** or **edited** files will be parsed for validation. | | | **output_variables** | 从命令输出中读取的 ENV 变量,并在 MegaLinter 的 ENV 上下文中重用,以便在后续命令中使用 | `[]` | | **tag** | 定义命令在哪个入口点运行(可用标签:`before_plugins`) | | | | **output_variables** | 从命令输出中读取的 ENV 变量,并在 MegaLinter 的 ENV 上下文中重用,以便在后续命令中使用 | `[]` | | **tag** | 定义命令在哪个入口点运行(可用标签:`after_plugins`) | | | | 风味 | 描述 | 内置 Linter | 信息 | |:--------------------------------------------------------------------------------------------------------------------------------------------------------:|:---:|:-----------------------------------------------------------------------|:----------------:|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| |
| [all](https://megalinter.io/beta/supported-linters/) | 默认 MegaLinter 风味 | 134 |   |
| 标签:AI, Cutter, GitHub Action, IPv6支持, MegaLinter, Python安全, 云安全监控, 仓库分析, 代码优化, 代码健康, 代码分析工具, 代码安全, 代码测试, 代码维护, 代码规范, 代码风格, 复制粘贴, 多格式, 多语言, 安全分析, 安全扫描, 开源, 开源框架, 弱口令爆破, 拼写检查, 持续交付, 持续集成, 数据可视化, 时序注入, 本地检查, 漏洞枚举, 自动化代码审查, 请求拦截, 逆向工具, 静态分析