轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
工单支持镜像收录Run 助手IP 归属地密码生成Npm 源Pip 源
帮助
常见问题我要吐槽
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
jenkins/custom-war-packager
官方博客使用教程热门镜像工单支持
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 - 国内开发者首选的专业 Docker 镜像下载加速服务平台 - 官方QQ群:13763429 👈点击免费获得技术支持。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

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

custom-war-packager Docker 镜像下载 - 轩辕镜像

custom-war-packager 镜像详细信息和使用指南

custom-war-packager 镜像标签列表和版本信息

custom-war-packager 镜像拉取命令和加速下载

custom-war-packager 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

custom-war-packager
jenkins/custom-war-packager
自动构建

custom-war-packager 镜像详细信息

custom-war-packager 镜像标签列表

custom-war-packager 镜像使用说明

custom-war-packager 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

Custom WAR Packager(CWP)是一个允许使用YAML规范构建即用型Jenkins包的工具,可生成Docker镜像、WAR文件和Jenkinsfile Runner Docker镜像,包含Jenkins核心、插件、额外库及通过Groovy Hook脚本或Configuration-as-Code插件的自配置。
1 收藏0 次下载activejenkins镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

custom-war-packager 镜像详细说明

custom-war-packager 使用指南

custom-war-packager 配置说明

custom-war-packager 官方文档

Jenkins Custom WAR Packager

概述

Custom WAR Packager(CWP)允许使用YAML规范构建即用型Jenkins包。该工具可生成Docker镜像、WAR文件和Jenkinsfile Runner Docker镜像(也称为单次运行Jenkins主节点)。这些包可包含Jenkins核心、插件、额外库,以及通过Groovy Hook脚本或Configuration-as-Code插件 YAML文件的自配置。

更多信息请参见此博客文章。

核心功能与特性

  • 支持构建多种类型的Jenkins包:Docker镜像、WAR文件、Jenkinsfile Runner Docker镜像
  • 可包含Jenkins核心、指定版本的插件、额外库
  • 支持通过Groovy Hook脚本或Configuration-as-Code插件实现自配置
  • 提供CLI和Maven插件两种使用方式
  • 支持物料清单(BOM)作为输入,加载插件和组件依赖
  • 允许从POM文件获取插件,简化开发版本的打包

使用场景

  • 构建自定义Jenkins WAR文件,包含特定版本的核心和插件
  • 创建集成Maven的Jenkins包
  • 配置Jenkins外部任务日志到Elasticsearch
  • 通过Configuration-as-Code插件使用YAML配置Jenkins
  • 修改Jenkins核心组件(库、模块)
  • 构建包含完整CI流程的独立Jenkins演示包
  • 打包Jenkinsfile Runner Docker镜像

演示示例

  • Jenkins WAR - 所有最新版 - 捆绑核心和一些关键库/模块的主分支
  • Jenkins WAR - 所有最新版与Maven - 与上述相同,但包含Maven
  • 外部任务日志到Elasticsearch - 运行外部日志演示并通过System Groovy Hooks预配置。该演示以Docker打包,并提供即用型Docker Compose包。
  • 配置即代码 - 通过YAML使用Configuration-as-Code插件配置WAR
  • 核心组件构建 - 演示如何修改核心组件(库、模块)
  • Custom WAR Packager CI演示 - 带有集成CI流程的独立演示
  • Jenkinsfile Runner - 打包Jenkinsfile Runner的Docker镜像

使用方法

前提条件

  • Maven 3.5.0或更高版本
  • Java 8
  • Git(如果定义了任何Git源)

Custom WAR Packager提供了一个Docker镜像,其中捆绑了所有必需的工具。

CLI

java -jar custom-war-packager-cli.jar -configPath=mywar.yml -version=1.0-SNAPSHOT -tmpDir=tmp

构建后,生成的WAR文件将被放置在tmp/output/target/${artifactId}.war。

要使用此配置以演示模式运行工具,请使用以下命令:

java -jar war-packager-cli.jar -demo

不带选项调用工具可获取完整的CLI选项列表。

Maven

Maven插件运行打包器并生成工件。工件将被放置在target/custom-war-packager-maven-plugin/output/target/${bundle.artifactId}.war,并添加到项目工件中。

  <build>
    <plugins>
      <plugin>
        <groupId>io.jenkins.tools.custom-war-packager</groupId>
        <artifactId>custom-war-packager-maven-plugin</artifactId>
        <version>@project.version@</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>custom-war</goal>
            </goals>
            <configuration>
              <configFilePath>spotcheck.yml</configFilePath>
              <warVersion>1.1-SNAPSHOT</warVersion>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

注意,此插件调用Maven-in-Maven,且不会将构建选项传递给插件。可使用配置文件配置下游构建器。

配置文件

示例:

bundle:
  groupId: "io.github.oleg-nenashev"
  artifactId: "mywar"
  description: "Just a WAR auto-generation-sample"
  vendor: "Jenkins project"
buildSettings:
  docker:
    base: "jenkins/jenkins:2.121.1"
    tag: "jenkins/demo-external-task-logging-elk"
    build: true
war:
  groupId: "org.jenkins-ci.main"
  artifactId: "jenkins-war"
  source:
    version: 2.107
plugins:
  - groupId: "org.jenkins-ci.plugins"
    artifactId: "matrix-project"
    source:
      version: 1.9
  - groupId: "org.jenkins-ci.plugins"
    artifactId: "durable-task"
    source:
      git: [***]
      branch: watch-JENKINS-38381
  - groupId: "org.jenkins-ci.plugins.workflow"
    artifactId: "workflow-durable-task-step"
    source:
      git: [***]
      commit: 6c424e059bba90fc94a9c1e87dc9c4a324bfef26
  - groupId: "io.jenkins"
    artifactId: "configuration-as-code"
    source:
      version: 0.11-alpha-rc373.933033f6b51e
libPatches:
  - groupId: "org.jenkins-ci.main"
    artifactId: "remoting"
    source:
      git: [***]
systemProperties: {
     jenkins.model.Jenkins.slaveAgentPort: "50000",
     jenkins.model.Jenkins.slaveAgentPortEnforce: "true"}
groovyHooks:
  - type: "init"
    id: "initScripts"
    source: 
      dir: scripts
casc:
  - id: "jcasc-config"
    source:
      dir: jenkins.yml

还有更多可用选项。有关示例,请参见链接的演示。

BOM支持

该插件支持JEP-309中描述的物料清单(BOM)作为输入。

如果定义了BOM,Custom WAR Packager将从中加载插件和组件依赖。以下示例从BOM获取输入并生成自定义WAR和Docker包。

bundle:
  groupId: "io.jenkins.tools.war-packager.demo"
  artifactId: "bom-demo"
buildSettings:
  bom: bom.yml
  environment: aws
  docker:
    base: "jenkins/jenkins:2.121.2"
    tag: "jenkins/cwp-bom-demo"
    build: true

此类配置的示例可在此处获取。

来自POM的插件

为简化开发版本的打包,可以将Custom War Packager链接到POM文件,以便从中获取要捆绑的插件。

如果设置了pom选项,将添加所有依赖项,包括测试依赖项。当前父项也将被捆绑,除非设置了pomIgnoreRoot标志。

bundle:
  groupId: "io.jenkins.tools.war-packager.demo"
  artifactId: "pom-input-demo"
buildSettings:
  pom: pom.xml
  pomIgnoreRoot: true
war:
  groupId: "org.jenkins-ci.main"
  artifactId: "jenkins-war"
  source:
    version: 2.121.1

示例可在此处获取。

高级功能

特性:

  • 使用自定义依赖项(如Remoting或Stapler)重建Jenkins核心
  • 向Jenkins核心添加额外库,以便在扩展中使用

限制

当前,该工具处于alpha状态。它有一些严重的限制:

  • 所有带有Git源的构建工件都将安装到本地仓库中
    • 每个提交的版本都是唯一的,因此请注意本地仓库污染
  • 系统属性仅适用于核心中定义的自定义jenkins.util.SystemProperties类
    • 如果需要设置其他系统属性,请使用Groovy Hook脚本
  • libPatches步骤仅捆绑指定的JAR文件,而非其依赖项 如果依赖项与基础WAR文件相比有变化,则也需要显式打包这些依赖项
    • 可使用libExcludes删除不再需要的依赖项
查看更多 custom-war-packager 相关镜像 →
google/shaka-packager logo
google/shaka-packager
by Google
认证
用于VOD和直播DASH及HLS应用的媒体打包与开发框架。
191M+ pulls
上次更新:9 个月前

常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像免费版与专业版有分别支持哪些镜像?

免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

轩辕镜像下载加速使用手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

🔐

登录方式进行 Docker 镜像下载加速教程

通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤

🐧

Linux Docker 镜像下载加速教程

在 Linux 系统上配置轩辕镜像源,支持主流发行版

🖥️

Windows/Mac Docker 镜像下载加速教程

在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统

📦

Docker Compose 镜像下载加速教程

在 Docker Compose 中使用轩辕镜像加速,支持容器编排

📋

K8s containerd 镜像下载加速教程

在 k8s 中配置 containerd 使用轩辕镜像加速

🔧

宝塔面板 Docker 镜像下载加速教程

在宝塔面板中配置轩辕镜像加速,提升服务器管理效率

💾

群晖 NAS Docker 镜像下载加速教程

在 Synology 群晖NAS系统中配置轩辕镜像加速

🐂

飞牛fnOS Docker 镜像下载加速教程

在飞牛fnOS系统中配置轩辕镜像加速

📱

极空间 NAS Docker 镜像下载加速教程

在极空间NAS中配置轩辕镜像加速

⚡

爱快路由 ikuai Docker 镜像下载加速教程

在爱快ikuai系统中配置轩辕镜像加速

🔗

绿联 NAS Docker 镜像下载加速教程

在绿联NAS系统中配置轩辕镜像加速

🌐

威联通 NAS Docker 镜像下载加速教程

在威联通NAS系统中配置轩辕镜像加速

📦

Podman Docker 镜像下载加速教程

在 Podman 中配置轩辕镜像加速,支持多系统

📚

ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程

配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤

🚀

专属域名方式进行 Docker 镜像下载加速教程

无需登录即可使用轩辕镜像加速服务,更加便捷高效

需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429

商务:17300950906
|©2024-2025 源码跳动
商务合作电话:17300950906|Copyright © 2024-2025 杭州源码跳动科技有限公司. All rights reserved.