
terragrunt-fmt Docker镜像 https://github.com/cytopia/docker-terragrunt-fmt/workflows/build/badge.svg](https://github.com/cytopia/docker-terragrunt-fmt/actions?query=workflow%3Abuild) https://github.com/cytopia/docker-terragrunt-fmt/workflows/nightly/badge.svg](https://github.com/cytopia/docker-terragrunt-fmt/actions?query=workflow%3Anightly)
所有 https://github.com/topics/awesome-ci Docker镜像
[ansible-lint][alint-git-lnk] • [ansible][ansible-git-lnk] • [awesome-ci][aci-git-lnk] • [bandit][bandit-git-lnk] • [black][black-git-lnk] • [checkmake][cm-git-lnk] • [eslint][elint-git-lnk] • [file-lint][flint-git-lnk] • [gofmt][gfmt-git-lnk] • [goimports][gimp-git-lnk] • [golint][glint-git-lnk] • [jsonlint][jlint-git-lnk] • [kubeval][kubeval-git-lnk] • [linkcheck][linkcheck-git-lnk] • [mypy][mypy-git-lnk] • [php-cs-fixer][pcsf-git-lnk] • [phpcbf][pcbf-git-lnk] • [phpcs][pcs-git-lnk] • [phplint][plint-git-lnk] • [pycodestyle][pycs-git-lnk] • [pydocstyle][pyds-git-lnk] • [pylint][pylint-git-lnk] • [terraform-docs][tfdocs-git-lnk] • [terragrunt-fmt][tgfmt-git-lnk] • [terragrunt][tg-git-lnk] • [yamlfmt][yfmt-git-lnk] • [yamllint][ylint-git-lnk]
查看GitHub上的**https://github.com/cytopia/docker-terragrunt-fmt/blob/master/Dockerfiles/**%E3%80%82
支持的架构: amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x
基于Alpine的多阶段构建Docker镜像,集成了https://github.com/hashicorp/terraform[1],能够对Terragrunt文件(.hcl)执行terraform fmt格式化操作。通过在容器内创建带有.tf扩展名的临时文件实现此功能。此外,包装器扩展了**-ignore参数**,可用于忽略文件、目录或通配符匹配项。该镜像每晚基于多个稳定版本构建并推送到Dockerhub。
[1] 官方项目:https://github.com/hashicorp/terraform
以下Docker镜像标签为滚动发布版本,每晚构建并更新。
https://github.com/cytopia/docker-terragrunt-fmt/workflows/nightly/badge.svg](https://github.com/cytopia/docker-terragrunt-fmt/actions?query=workflow%3Anightly)
| Docker标签 | Git引用 | terraform版本 | 支持的架构 |
|---|---|---|---|
latest | master | latest | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
1.3 | master | 1.3.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
1.2 | master | 1.2.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
1.1 | master | 1.1.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
1.0 | master | 1.0.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
0.15 | master | 0.15.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
0.14 | master | 0.14.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
0.13 | master | 0.13.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
0.12 | master | 0.12.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
以下Docker镜像标签为一次性构建版本,可用于可重复构建。其版本不会更改,因此需要定期更新管道中的标签以保持最新。
https://github.com/cytopia/docker-terragrunt-fmt/workflows/build/badge.svg](https://github.com/cytopia/docker-terragrunt-fmt/actions?query=workflow%3Abuild)
| Docker标签 | Git引用 | terraform版本 | 支持的架构 |
|---|---|---|---|
latest-<tag> | tag: <tag> | latest | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
1.3-<tag> | tag: <tag> | 1.3.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
1.2-<tag> | tag: <tag> | 1.2.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
1.1-<tag> | tag: <tag> | 1.1.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
1.0-<tag> | tag: <tag> | 1.0.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
0.15-<tag> | tag: <tag> | 0.15.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
0.14-<tag> | tag: <tag> | 0.14.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
0.13-<tag> | tag: <tag> | 0.13.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
0.12-<tag> | tag: <tag> | 0.12.x | amd64, i386, arm64, arm/v7, arm/v6, ppc64le, s390x |
其中
<tag>指此仓库中选择的git标签。
Docker容器内的工作目录为**/data/**,应将本地项目根目录挂载到此路径。
忽略所有名为dev/和testing/的目录及其内部所有内容:
bash$ docker run --rm -v $(pwd):/data cytopia/terragrunt-fmt -recursive -ignore=*/dev/,*/testing/ [INFO] 查找文件: find . -not \( -path "./*/dev/*" -o -path "./*/testing/*" \) -name '*.hcl' -type f terraform fmt -list=true -write=false ./prod/eu-central-1/microservice/terragrunt.hcl ../tmp/terragrunt.hcl.tf terraform fmt -list=true -write=false ./prod/eu-central-1/infra/terragrunt.hcl ../tmp/terragrunt.hcl.tf
可在项目中添加以下Makefile,以便轻松对Terragrunt .hcl文件进行代码检查和格式化修复:
makeifneq (,) .error This Makefile requires GNU Make. endif .PHONY: help lint fix _pull CURRENT_DIR = $(dir $(abspath $(lastword $(MAKEFILE_LIST)))) # 根据需求调整 IGNORE = */.terragrunt-cache/,*/.terraform/ FMT_VERSION = latest help: @echo "help 显示此帮助信息" @echo "lint 若存在格式错误文件则退出状态码>0" @echo "fix 修复所有.hcl文件格式" lint: _pull docker run --rm -v $(CURRENT_DIR):/data cytopia/terragrunt-fmt:$(FMT_VERSION) \ -check -diff -recursive -ignore='$(IGNORE)' fix: _pull docker run --rm -v $(CURRENT_DIR):/data cytopia/terragrunt-fmt:$(FMT_VERSION) \ -write -diff -recursive -ignore='$(IGNORE)' _pull: docker pull cytopia/terragrunt-fmt:$(FMT_VERSION)
有了上述Makefile后,可轻松添加Travis CI规则以确保Terragrunt代码使用正确的编码风格:
yml--- sudo: required language: minimal services: - docker script: - make lint
无需安装大量依赖,选择以下Docker化版本的代码检查工具,实现可重复的本地或远程CI测试:
| GitHub | DockerHub | 类型 | 描述 |
|---|---|---|---|
| [awesome-ci][aci-git-lnk] | [![aci-hub-img]][aci-hub-lnk] | 基础工具 | 用于git、文件和静态源代码分析的工具 |
| [file-lint][flint-git-lnk] | [![flint-hub-img]][flint-hub-lnk] | 基础工具 | 基础源代码分析 |
| [linkcheck][linkcheck-git-lnk] | [![linkcheck-hub-img]][flint-hub-lnk] | 基础工具 | 在文件中搜索URL并验证其HTTP状态码 |
| [ansible][ansible-git-lnk] | [![ansible-hub-img]][ansible-hub-lnk] | Ansible | Ansible的多个版本和变体 |
| [ansible-lint][alint-git-lnk] | [![alint-hub-img]][alint-hub-lnk] | Ansible | Ansible代码检查 |
| [gofmt][gfmt-git-lnk] | [![gfmt-hub-img]][gfmt-hub-lnk] | Go | Go源代码格式化 [1] |
| [goimports][gimp-git-lnk] | [![gimp-hub-img]][gimp-hub-lnk] | Go | Go源代码格式化 [1] |
| [golint][glint-git-lnk] | [![glint-hub-img]][glint-hub-lnk] | Go | Go代码检查 |
| [eslint][elint-git-lnk] | [![elint-hub-img]][elint-hub-lnk] | JavaScript | JavaScript代码检查 |
| [jsonlint][jlint-git-lnk] | [![jlint-hub-img]][jlint-hub-lnk] | JSON | JSON文件检查 [1] |
| [kubeval][kubeval-git-lnk] | [![kubeval-hub-img]][kubeval-hub-lnk] | K8s | Kubernetes文件检查 |
| [checkmake][cm-git-lnk] | [![cm-hub-img]][cm-hub-lnk] | Make | Makefile检查 |
| [phpcbf][pcbf-git-lnk] | [![pcbf-hub-img]][pcbf-hub-lnk] | PHP | PHP代码美化与修复工具 |
| [phpcs][pcs-git-lnk] | [![pcs-hub-img]][pcs-hub-lnk] | PHP | PHP代码嗅探器 |
| [phplint][plint-git-lnk] | [![plint-hub-img]][plint-hub-lnk] | PHP | PHP代码检查器 [1] |
| [php-cs-fixer][pcsf-git-lnk] | [![pcsf-hub-img]][pcsf-hub-lnk] | PHP | PHP编码标准修复工具 |
| [bandit][bandit-git-lnk] | [![bandit-hub-img]][bandit-hub-lnk] | Python | PyCQA的安全代码检查工具 |
| [black][black-git-lnk] | [![black-hub-img]][black-hub-lnk] | Python | 不妥协的Python代码格式化工具 |
| [mypy][mypy-git-lnk] | [![mypy-hub-img]][mypy-hub-lnk] | Python | 静态源代码分析 |
| [pycodestyle][pycs-git-lnk] | [![pycs-hub-img]][pycs-hub-lnk] | Python | Python风格指南检查器 |
| [pydocstyle][pyds-git-lnk] | [![pyds-hub-img]][pyds-hub-lnk] | Python | Python文档风格检查器 |
| [pylint][pylint-git-lnk] | [![pylint-hub-img]][pylint-hub-lnk] | Python | Python源代码、 |
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务