
本Docker镜像提供了基于Jinja2的模板渲染功能,允许用户通过模板文件和变量文件动态生成配置文件或其他文本内容。无需在本地安装Jinja2环境,直接通过Docker容器即可完成模板渲染,简化了配置生成流程,提高了环境一致性。
environ('变量名')获取/templates目录/variables目录-e参数传递所需环境变量environ('环境变量名')获取环境变量默认支持以下格式(可通过--format参数指定):
更多格式支持可参考https://github.com/mattrobenolt/jinja2-cli%E6%96%87%E6%A1%A3%E3%80%82
bashdocker run --rm \ -v [本地模板目录]:/templates \ -v [本地变量目录]:/variables \ -e [自定义环境变量]=[值] \ dinutac/jinja2docker:latest /templates/[模板文件] /variables/[变量文件] --format=[格式] > [输出文件]
示例1:生成Docker Compose配置
bashdocker run --rm \ -v $PWD/inputs/templates:/templates \ -v $PWD/inputs/variables:/variables \ -e DATABASE=mysql56 -e IMAGE=latest \ dinutac/jinja2docker:latest /templates/standalone.j2 /variables/variables.yml --format=yaml > docker-compose.yml
示例2:生成JSON配置
bashdocker run --rm \ -v $PWD/inputs/templates:/templates \ -v $PWD/inputs/variables:/variables \ dinutac/jinja2docker:latest /templates/json.j2 /variables/json.json --format=json
模板文件(template.json)
txtOs: {{os}} Flavour: {{flavour}} Path: {{environ('PATH')}}
变量文件(variables.json)
json{ "os": "Linux", "flavour": "CentOS" }
渲染结果(result.json)
jsonOs: Linux Flavour: CentOS Path: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
如需使用内置自定义渲染功能,需覆盖容器入口点为/scripts/entities/render.py,该模式支持YAML和JSON格式:
bashdocker run --rm --entrypoint /scripts/entities/render.py \ -e DATABASE=mysql56 -e IMAGE=latest \ dinutac/jinja2docker:latest json.j2 /variables/json.json
注意:模板文件需直接通过名称引用(而非路径),且必须存在于
/templates目录中。
如需实现自定义Jinja2渲染逻辑:
render.py文件,覆盖容器内/scripts/entities/render.py路径您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 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 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务