专属
文档
插件
助手
邀请
顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单页面收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题轩辕镜像免费版
其他
关于我们网站地图
热门搜索:
voxbox

voxpupuli/voxbox

voxpupuli

Vox Pupuli Test Box是用于测试voxpupuli OpenVox/Puppet模块的Docker镜像,预装voxpupuli-test、-acceptance、-release等Ruby gems及curl、git、jq等工具,提供一致的测试、验证和发布环境,支持CI/CD集成。

下载次数: 0状态:社区镜像维护者:voxpupuli仓库类型:镜像最近更新:12 天前
让 AI 帮你使用轩辕镜像? · 展开查看说明

如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这句话即可:

请先完整阅读并严格遵守以下文档中的全部规则与要求:

https://xuanyuan.cloud/agents.md

在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

轩辕镜像,快一点,稳很多。点击查看
中文简介
标签下载
镜像标签列表与下载命令
轩辕镜像,快一点,稳很多。点击查看

Vox Pupuli Test Box

https://github.com/voxpupuli/container-voxbox/actions/workflows/ci.yaml/badge.svg](https://github.com/voxpupuli/container-voxbox/actions/workflows/ci.yaml) ![Sponsored by betadots GmbH]([***]


  • Vox Pupuli Test Box
    • 概述
    • 包含的Ruby gems
    • 额外包含的工具
    • 版本信息
    • 使用方法
      • Rake
        • release任务
        • spec任务
        • 可用的rake任务
      • Onceover
      • Shell
      • Puppet
        • puppet-strings
      • puppet-ghostbuster
      • YAMLlint
      • JQ
      • cURL
      • RuboCop
      • Librarian
      • eyaml
    • EasyVoxBox (evb)
    • GitLab
      • GitLab CI配置示例
      • GitLab代码质量报告
      • GitLab单元测试报告
    • 版本 schema
    • 如何发布?
    • 如何贡献?

概述

本容器用于测试voxpupuli的OpenVox/Puppet模块。它已预装voxpupuli-test、-acceptance、-release gems及其所有依赖。

重要信息

  • ⚠ 2025年2月28日,OpenVox/Puppet 7进入生命周期结束阶段。因此,将不再构建新的VoxBox:7版本。现有版本将保留供继续使用。

包含的Ruby gems

详见:Gemfile

  • hiera-eyaml
  • librarian
  • modulesync
  • onceover
  • openfact
  • openvox
  • puppet-ghostbuster
  • r10k
  • rubocop
  • voxpupuli-acceptance
  • voxpupuli-release
  • voxpupuli-test

额外包含的工具

  • curl
  • git
  • gpg
  • jq
  • ssh-client
  • yamllint

版本信息

有关容器中包含的工具版本,请参见:

build_versions.yaml

使用方法

Rake

进入OpenVox/Puppet模块的根目录并运行容器。确保将当前目录挂载到容器的/repo路径下。默认入口点为rake。无参数时将运行rake -f /Rakefile -T。可指定rake任务作为参数。详见可用的rake任务。

为保证一致的rake环境,我们使用-f /Rakefile显式指定Rakefile,而非依赖仓库中可能过时的版本。所使用的Rakefile可查看此处。

shell
cd puppet-example
podman run -it --rm -v $PWD:/repo:Z ghcr.io/voxpupuli/voxbox:8                   # 运行 rake -T
podman run -it --rm -v $PWD:/repo:Z ghcr.io/voxpupuli/voxbox:8 spec              # 运行 rake spec

release任务

使用release rake任务:

shell
podman run -it --rm \
   -v $PWD:/repo:Z \
   -v ~/.gitconfig:/etc/gitconfig:ro \
   -v ~/.ssh:/root/.ssh \
   -v ${SSH_AUTH_SOCK}:${SSH_AUTH_SOCK} \
   -e SSH_AUTH_SOCK="${SSH_AUTH_SOCK}" \
   ghcr.io/voxpupuli/voxbox:8 release

spec任务

仅运行特定的spec:

shell
podman run -it --rm -e "SPEC=spec/classes/example_spec.rb" -v $PWD:/repo:Z ghcr.io/voxpupuli/voxbox:8 spec

可用的rake任务

shell
rake beaker                                                                     # 运行RSpec代码示例
rake build                                                                      # 构建Puppet模块包
rake build:pdk                                                                  # 使用PDK构建Puppet模块
rake check                                                                      # 运行静态发布前检查
rake check:dot_underscore                                                       # 若目录中存在._文件则失败
rake check:git_ignore                                                           # 若目录包含.gitignore中指定的文件则失败
rake check:symlinks                                                             # 若目录中存在符号链接则失败
rake check:test_file                                                            # 若tests文件夹中存在.pp文件则失败
rake check:trailing_whitespace                                                  # 检查尾随空白字符
rake check_changelog                                                            # 检查变更日志
rake clean                                                                      # 清理已构建的模块包
rake compute_dev_version                                                        # 打印模块的开发版本
rake generate_fixtures                                                          # 基于Puppetfile生成-fixtures.yml
rake generate_vendor_cache                                                      # 获取通常捆绑在AIO代理中的核心模块
rake help                                                                       # 显示可用的rake任务列表
rake lint                                                                       # 运行puppet-lint
rake lint_fix                                                                   # 运行puppet-lint并修复问题
rake metadata_lint                                                              # 运行metadata-json-lint
rake module:build                                                               # 使用puppet-modulebuilder构建模块
rake module:bump                                                                # 将模块版本 bump 到下一个补丁版本
rake module:bump:full                                                           # 将模块版本 bump 到下一个完整版本
rake module:bump:major                                                          # 将模块版本 bump 到下一个主版本
rake module:bump:minor                                                          # 将模块版本 bump 到下一个次版本
rake module:bump:patch                                                          # 将模块版本 bump 到下一个补丁版本
rake module:bump_commit                                                         # Bump版本并提交到git
rake module:bump_commit:full                                                    # Bump到下一个完整版本并提交到git
rake module:bump_commit:major                                                   # Bump到下一个主版本并提交到git
rake module:bump_commit:minor                                                   # Bump到下一个次版本并提交到git
rake module:bump_commit:patch                                                   # Bump到下一个补丁版本并提交到git
rake module:bump_to_version[new_version]                                        # 将模块 bump 到指定版本号
rake module:clean                                                               # 再次运行清理
rake module:dependency[module_name,version]                                     # 设置特定模块依赖版本
rake module:push                                                                # 将模块推送到Puppet Forge
rake module:release                                                             # 发布Puppet模块,执行清理、构建、bump_commit、标记、推送和git推送
rake module:tag                                                                 # 使用当前模块版本创建git标签
rake module:version                                                             # 获取当前模块版本
rake module:version:next                                                        # 获取下一个模块版本
rake module:version:next:major                                                  # 获取下一个主版本
rake module:version:next:minor                                                  # 获取下一个次版本
rake module:version:next:patch                                                  # 获取下一个补丁版本
rake parallel_spec                                                              # 并行运行spec测试,成功后清理测试夹具目录
rake parallel_spec_standalone                                                   # 独立并行spec测试
rake r10k:dependencies                                                          # 打印过时的Forge模块
rake r10k:deprecation                                                           # 验证没有Forge模块已被弃用
rake r10k:duplicates                                                            # 检查Puppetfile中的重复项
rake r10k:install                                                               # 安装Puppetfile中指定的模块
rake r10k:print_git_conversion                                                  # 转换并打印Forge模块为git格式
rake r10k:solve_dependencies[allow_major_bump]                                  # 查找缺失或过时的模块依赖
rake r10k:syntax                                                                # 语法检查Puppetfile
rake r10k:validate                                                              # 验证git URL和分支、引用或标签
rake release                                                                    # 通过GitHub Actions发布
rake release:prepare                                                            # 准备发布
rake release_checks                                                             # 在模块发布前运行所有必要检查
rake rubocop                                                                    # 运行RuboCop
rake rubocop:autocorrect                                                        # 自动纠正RuboCop违规(仅安全纠正)
rake rubocop:autocorrect_all                                                    # 自动纠正RuboCop违规(安全和不安全纠正)
rake spec                                                                       # 运行spec测试,成功后清理测试夹具目录
rake spec:simplecov                                                             # 使用Ruby simplecov代码覆盖率运行spec测试
rake spec_clean                                                                 # 清理测试夹具目录
rake spec_clean_symlinks                                                        # 清理所有测试夹具符号链接
rake spec_list_json                                                             # 以JSON文档列出spec测试
rake spec_prep                                                                  # 创建测试夹具目录
rake spec_standalone                                                            # 运行RSpec代码示例
rake strings:generate[patterns,debug,backtrace,markup,json,markdown,yard_args]  # 使用YARD生成Puppet文档
rake strings:generate:reference[patterns,debug,backtrace]                       # 生成Puppet参考文档
rake strings:gh_pages:update                                                    # 更新gh-pages分支上的文档并推送到GitHub
rake strings:validate:reference[patterns,debug,backtrace]                       # 验证参考文档是否最新
rake syntax                                                                     # 语法检查Puppet清单、模板和Hiera
rake syntax:hiera                                                               # 语法检查Hiera配置文件
rake syntax:manifests                                                           # 语法检查Puppet清单
rake syntax:templates                                                           # 语法检查Puppet模板
rake test                                                                       # 运行测试
rake travis_release                                                             # 已弃用:使用"release"任务替代
rake validate                                                                   # 检查Ruby文件语法并调用:syntax和:metadata_lint
rake voxpupuli:custom:lint_all                                                  # 使用所有puppet-lint检查进行代码检查

Onceover

若要运行onceover,需覆盖入口点:

shell
podman run -it --rm -v $PWD:/repo:Z --entrypoint onceover ghcr.io/voxpupuli/voxbox:8 help

Onceover允许针对控制仓库运行测试。

初始化onceover:

shell
podman run -it --rm -v $PWD:/repo:Z --entrypoint onceover ghcr.io/voxpupuli/voxbox:latest init

运行spec测试:

shell
podman run -it --rm -v $PWD:/repo:Z --entrypoint onceover ghcr.io/voxpupuli/voxbox:8 run spec

使用Puppetfile中的内部git+ssh模块运行spec测试:

shell
podman run -it --rm \
  -v ~/.ssh:/root/.ssh:Z \
  -v $PWD:/repo:Z \
  --entrypoint onceover ghcr.io/voxpupuli/voxbox:latest run spec

带Puppet输出运行spec测试:

shell
podman run -it --rm \
  -v $PWD:/repo:Z \
  -e SHOW_PUPPET_OUTPUT=true \
  --entrypoint onceover ghcr.io/voxpupuli/voxbox:latest run spec

其他命令:

命令功能描述
show puppetfile分析Puppetfile并显示可用更新
update puppetfile更新模块

更多命令、所需配置和使用方法详见https://github.com/voxpupuli/onceover%E3%80%82

Shell

若需要shell,需覆盖入口点:

shell
podman run -it --rm -v $PWD:/repo:Z --entrypoint ash ghcr.io/voxpupuli/voxbox:8

Puppet

若要执行puppet,将入口点更改为puppet并传递子命令/参数。

shell
podman run -it --rm -v $PWD:/repo:Z --entrypoint puppet ghcr.io/voxpupuli/voxbox:8 --help

puppet-strings

shell
podman run -it --rm -v $PWD:/repo:Z --entrypoint puppet ghcr.io/voxpupuli/voxbox:8 strings --help

puppet-ghostbuster

若要执行puppet-ghostbuster,将入口点更改为ash并向容器传递命令。Ghostbuster需要连接到OpenVoxDB/PuppetDB,因此需提供环境变量。可在https://github.com/voxpupuli/puppet-ghostbuster%E4%BB%93%E5%BA%93%E7%9A%84%E6%96%87%E6%A1%A3%E4%B8%AD%E6%89%BE%E5%88%B0%E7%9B%B8%E5%85%B3%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E3%80%82

Ghostbuster支持以下检查:

  • ghostbuster_classes
  • ghostbuster_defines
  • ghostbuster_facts
  • ghostbuster_files
  • ghostbuster_functions
  • ghostbuster_hiera_files
  • ghostbuster_templates
  • ghostbuster_types

可通过--only-checks组合这些检查,用逗号分隔列表。

shell
podman run -it --rm -v $PWD:/repo:Z --entrypoint ash ghcr.io/voxpupuli/voxbox:8
find . -type f -exec bundle exec --gemfile /Gemfile puppet-lint --only-checks ghostbuster_classes,ghostbuster_facts {} \+

YAMLlint

若要执行yamllint,将入口点更改为yamllint并向容器传递文件夹(例如.)。

shell
podman run -it --rm -v $PWD:/repo:Z --entrypoint yamllint ghcr.io/voxpupuli/voxbox:8 .

JQ

若要执行jq,将入口点更改为jq并向容器传递查询/参数。

shell
podman run -it --rm -v $PWD:/repo:Z --entrypoint jq ghcr.io/voxpupuli/voxbox:8 --help

cURL

若要执行curl,将入口点更改为curl并向容器传递查询/参数。

shell
podman run -it --rm -v $PWD:/repo:Z --entrypoint curl ghcr.io/voxpupuli/voxbox:8 --help

RuboCop

若要直接执行RuboCop,将入口点更改为rubocop并传递子命令/参数。

shell
podman run -it --rm -v $PWD:/repo:Z --entrypoint rubocop ghcr.io/voxpupuli/voxbox:8
podman run -it --rm -v $PWD:/repo:Z --entrypoint rubocop ghcr.io/voxpupuli/voxbox:8 --auto-gen-config

Librarian

若要执行librarian,将入口点更改为librarian-puppet并传递查询/参数。

shell
podman run -it --rm -v $PWD:/repo:Z --entrypoint librarian-puppet ghcr.io/voxpupuli/voxbox:8 help

hiera-eyaml

若要使用纯eyaml加密/解密数据,更改入口点如下:

shell
podman run -it --rm -v $PWD:/repo:Z --entrypoint eyaml ghcr.io/voxpupuli/voxbox:8 edit /repo/

EasyVoxBox (evb)

evb脚本简化了运行voxbox的命令输入。此外,它不关心选项顺序,这对设置shell别名很有用。运行命令时,必须进入openvox模块(含metadata.json文件)或控制仓库(含Puppetfile)的任何子目录。

显示evb帮助信息:

shell
$ evb help
Usage: /usr/local/bin/evb [options] [command]

available options:
  --noop        : 打印要运行的命令,但不执行
  --entrypoint  : 使用不同的入口点
                  可用入口点示例:
                  onceover, ash, puppet, yamllint, jq, curl, rubocop
                  默认:不指定入口点
  --image image : 使用不同的镜像(默认ghcr.io/voxpupuli/voxbox:8)
  --env VAR=val : 指定环境变量(可多次使用)
                  注意:赋值中的'./'将替换为容器中使用的正确路径。
                  示例:若在~/openvox-supermodule/spec/classes中启动脚本
                           并设置--env SPEC=./supermodule_spec.rb,将
                           使用-e SPEC=spec/classes/supermodule_spec.rb运行VoxBox
  --volume vol  : 指定要放入容器的额外卷
                  参见podman

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 voxbox 镜像标签

docker pull docker.xuanyuan.run/voxpupuli/voxbox:<标签>

使用方法:

  • 登录认证方式
  • 免认证方式

DockerHub 原生拉取命令

docker pull voxpupuli/voxbox:<标签>

更多 voxbox 镜像推荐

voxpupuli/vox-pupuli-tasks logo

voxpupuli/vox-pupuli-tasks

voxpupuli
Vox Pupuli Tasks是一个社区管理Web应用,专为Vox Pupuli协作者设计,提供Pull Request审查、Puppet模块维护自动化(如合并冲突处理、GitHub标签同步)等功能,提升社区协作效率。
1 次收藏100万+ 次下载
2 年前更新
voxpupuli/container-puppetserver logo

voxpupuli/container-puppetserver

voxpupuli
⚠️ 已弃用 ⚠️ 此Puppet Server容器镜像已废弃,即将归档,请改用OpenVox Server容器。原镜像用于运行Puppet Server,支持自定义配置、环境缓存管理、持久化存储及初始化脚本。
1 次收藏1万+ 次下载
1 年前更新
voxpupuli/puppetserver logo

voxpupuli/puppetserver

voxpupuli
⚠️ 已弃用 ⚠️ 此镜像用于运行Puppet Server容器,现建议使用OpenVox Server容器替代。原用于提供Puppet Server的Docker化部署,支持自定义配置、持久化存储及初始化脚本。
1万+ 次下载
1 年前更新
voxpupuli/puppetdb logo

voxpupuli/puppetdb

voxpupuli
PuppetDB的容器镜像(已弃用,建议使用OpenVox DB容器替代)
1万+ 次下载
1 年前更新
voxpupuli/renovate logo

voxpupuli/renovate

voxpupuli
Voxpupuli Renovate容器封装了renovate工具及必要插件,基于Alpine系统,体积更小且安全漏洞少,用于自动更新项目依赖。
1万+ 次下载
15 天前更新
voxpupuli/container-puppetdb logo

voxpupuli/container-puppetdb

voxpupuli
Voxpupuli PuppetDB容器镜像已弃用,将很快归档,建议使用OpenVox DB容器替代,用于运行PuppetDB并需配合PostgreSQL数据库使用。
8千+ 次下载
1 年前更新

查看更多 voxbox 相关镜像

轩辕镜像配置手册

按平台快速找到配置文档

Docker

登录仓库拉取

登录认证 · 私有仓库

专属域名拉取

免登录 · 高速拉取

Linux

Docker 镜像配置

Windows / Mac

Docker Desktop 配置

MacOS OrbStack

OrbStack 容器

Docker Compose

Compose 项目配置

NAS

群晖

Synology 配置

飞牛

fnOS 镜像配置

绿联

绿联 NAS

威联通

QNAP 配置

极空间

极空间 NAS

企业仓库

其他仓库

ghcr · Quay · nvcr

Harbor 镜像源

Proxy Repository 对接

Portainer 镜像源

Registries 配置

Nexus 镜像源

Docker Proxy 缓存

开发工具

Dev Containers

VS Code 开发容器

Podman

Podman 配置指南

Singularity / Apptainer

HPC 科学计算容器

Kubernetes

K8s Containerd

Kubernetes · Containerd

K3s

轻量级集群

面板 / 网络

爱快路由

iKuai 镜像加速

宝塔面板

一键配置镜像源

AI

用 AI 使用轩辕镜像

agents.md · AI 对话 · 提示词

需要其他帮助?请查看我们的 常见问题 Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

功能

免费版与专业版区别

功能对比 · 版本选择

支持的镜像仓库

Docker Hub · GCR · GHCR

新手拉取配置

登录 · 专属域名 · 配置

docker search 限制

专属域名 · Hub 搜索

不支持 push

仅支持 pull · 不支持

拉取速度原因

带宽 · 缓存 · 冷热镜像

排错

402 与流量用尽

402 · 流量包 · 充值

401 认证失败

401 · docker login

manifest unknown

标签错误 · 镜像不存在

410 Gone 排查

410 · Docker 升级

429 限流

免费版 · 请求频率

DNS 超时

DNS 解析 · 网络超时

账号

失败是否计费

manifest · blob · 计费

申请开发票(企业 / 个人)

企业 · 个人 · 工单

修改登录密码

网站 · 仓库 · 重置

注销账户

工单 · 数据 · 注销

原理

mirrors 不生效

daemon.json · 重启

去掉域名前缀

docker tag · 重命名

指定架构拉取

ARM64 · AMD64 · 多架构

latest 与「最新」

digest · 版本号 · 标签

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
voxpupuli/voxbox
博客Docker 镜像公告与技术博客
热门查看热门 Docker 镜像推荐
教程轩辕镜像功能与使用教程
安装一键安装 Docker 并配置镜像源
官方公众号:源码跳动|官方技术交流群:13763429
官方公众号:源码跳动|官方技术交流群:|问题咨询请:提交工单
商务合作:点击复制邮箱
©2024-2026 源码跳动
商务合作:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.