这一变革对作为研发供应链核心的制品库提出了前所未有的新要求。传统的制品库解决方案因其历史架构局限,已难以胜任,企业的制品管理体系亟需一次面向未来的战略性升级。 01.新兴技术对制品库的新要求新技术的涌现并非简单增加了几种新文件格式,而是从根本上的范式转移,对制品库的存储、分发、管理理念都带来了深度挑战。 高性能分发:采用了联邦仓库和边缘节点协同的架构。中央仓库统一管理权威制品,通过智能策略将制品自动同步到离开发、生产环境更近的边缘节点,实现“数据多远,计算近近”的加速效果。 2)JFrogArtifactory:支持多种格式,但对鸿蒙、Rust等新兴生态支持较弱;3)Harbor:仅擅长容器镜像,无法管理AI模型或鸿蒙包;4)Nexus:开源版功能有限,企业版对新格式响应慢 制品库早已超越其作为“二进制存储仓库”的原始角色,演进为支撑企业高效创新、安全合规、协同共享的核心基础设施。能否快速集成和支持像AI模型、鸿蒙包这样的新兴技术,直接决定了企业的创新速度和市场响应能力。
在当今快速迭代的研发环境中,制品库已成为企业DevOps流程中的核心基础设施之一。然而,许多企业在选型过程中往往仅关注表面功能与基础安全性,忽略了其背后对企业长期成本结构与研发效能产生的深远影响。 嘉为蓝鲸制品管理平台·CPack通过多项技术手段实现成本结构的优化:买断制许可:嘉为蓝鲸研发制品参考支持一次性买断许可,显著降低长期使用成本。 02.研发效能:自动化与协同的双重提升研发制品仓库不仅是文件的存储仓库,更是研发流水线中的协作枢纽。 嘉为蓝鲸制品管理平台·CPack在提升研发效能方面表现出以下优势:联邦仓库与多地域同步:支持多集群联邦架构,可实现跨地域、跨数据中心的仓库同步和统一治理。 嘉为蓝鲸制品管理平台·CPack通过技术创新和架构优化,不仅在核心功能上可对标主流产品,更在成本结构、效能提升和国产化适配方面展现出显著的“隐藏价值”,成为企业实现研发基础设施可持续进化的优质选择。
资源配额管理一直是 Artifact (制品)仓库的痛点之一,主要原因是,Artifact 的层文件存储有共享性,不同项目下的不同 Artifact 可以共享一个或者多个层文件,资源配额管理亟待解决的问题包括 2.推送 Artifact 到 Artifact 仓库 当客户端推送一个Artifact到Artifact仓库时,会按照顺序依次执行以下几个步骤。 (1)推送Configuration配置文件。 在所有块文件都推送成功后,客户端会发起 PUT Blob 请求,让 Artifact 仓库知道该层文件推送完成。 (3)推送 Manifest 描述文件。 3.Docker Distribution 的分层管理及层共享 在执行 “docker pull” 命令从镜像仓库中拉取镜像时,用户可能会注意到 Docker 是分层拉取的,而且每一层都是独立的,如图所示 3.Artifact的远程复制 系统管理员创建远程复制策略时,会从其他镜像仓库复制 Artifact 到当前 Harbor,对应项目的配额被相应地扣除。
(续上一篇) 3. 访问控制与授权 访问控制是企业应用中必须考虑的问题,不同的用户使用系统功能时应该具有不同的权限,或者说需要授权才能进行一定的操作。 权 限 项目管理员 维护人员 开发者 访 客 受限访客 查看项目仓库 ✔ ✔ ✔ ✔ ✔ 创建项目仓库 ✔ ✔ ✔ 编辑、删除项目仓库 ✔ ✔ 查看、复制、拉取 Artifact 3.为什么用“docker login -u username -p password server”命令在Shell终端或脚本里通过机器人账号登录 Harbor 时,系统会提示 “unauthorized
访问控制是 Harbor 系统数据安全的一个基本组成部分,定义了哪些用户可以访问和使用 Harbor 里的项目(project)、项目成员、Repository 仓库、Artifact 等资源。 仅系统管理员可以访问的资源包括用户、Registry 仓库、复制(Replication)、标签、项目定额、审查服务、垃圾回收和系统配置管理。 基于项目来管理的资源包括项目概要、Artifact仓库、Helm Charts、项目成员、标签、扫描器、Artifact(Tag)保留、不可变Artifact(Tag)、机器人账户、Webhook、日志 (本文为公众号亨利笔记原创文章) (3)在用户经过身份验证后,OIDC 提供商将使用授权代码重定向至Harbor。 (4)Harbor 将与 OIDC 提供商交换此授权代码以获得访问令牌。 AuthProxy 不支持 不支持 不支持 Bitbucket Cloud 支持 支持 不支持 OpenShift 不支持 支持 不支持 Atlassian Crowd 支持 支持 支持 下一篇:Harbor制品仓库的访问控制
OCI 分发规范定义了仓库服务和仓库客户端交互的协议,主要包括:面向命名空间(Namespace)的URI格式、能够拉取和推送 v2 格式清单的仓库服务、支持可续传的推送过程及 v2 客户端的要求等。 ),简称 Artifact(制品)。 把各类数据封装成 OCI Artifact 的好处之一,是可以借助已有的支持 OCI 分发规范的镜像仓库服务(如 Harbor 2.0 等)来实现不同类型数据的存储、权限、复制和分发等能力,而无须针对每种特定类型的数据设立或开发不同的仓库服务 必须是字符串“config” version 类型的版本 optional-configFormat 可选的配置格式说明(json、yaml等) 一些常见的 OCI Artifact 配置类型如表3所示 json CNAB application/vnd.cnab.config.v1+json Singularity application/vnd.sylabs.sif.config.v1+json (3)
降低出现问题波及范围,例如使用功能开关,金丝雀测试,蓝/绿环境和微服务 将产品需求与服务台相结合 养成使用混沌工程来找到失败原因的习惯 在讲述 DevSecOps 案例并说明如何灌输安全文化后,她将话题转向如何使用制品仓库 毕竟,这是一个 Nexus 会议,制品仓库是 Nexus 的特色。 她引用了 Manfred Moser 的话:「开发软件中没有制品仓库和制造业中没有仓库是一样的。」 你不会奢望在没有仓库的情况下开办工厂,软件开发也一样。制品仓库保存了你每次构建的结果,并且确保你拥有可用的构建。 制品仓库位于 DevOps 工具链的集成阶段,尽管其在构思阶段可被用来表示你想使用的工具是可用状态。 ? 如果没有开源策略,你就不应该使用制品仓库。 制品仓库会自动执行你的开源策略,这样就不会像 35% 的组织一样有开源策略但忽略它。 ?
在数字化转型与信创战略双轮驱动下,软件制品库已成为企业DevOps流程中的核心基础设施。面对国际工具在国产化适配、数据安全、成本控制等方面的局限,越来越多企业将目光投向国产自研制品库。 本文将结合主流产品特性,为您解析如何选择一款在功能、安全与生态融合方面表现突出的国产制品库解决方案。为何国产制品库——嘉为蓝鲸制品管理平台会成为企业新选择? 国产研发制品仓库嘉为蓝鲸制品管理平台·CPack,正是在这一背景下迅速成熟,填补了信创生态空白。 跨地域协同与分发性能:联邦仓库集群架构支持多节点同步与限速策略,适合大型集团与跨地域团队。成本与长期运维:支持一次性买断,长期成本降低70%以上,并通过校验和去重技术节省存储资源50%以上。 2025年,国产制品库已从“替代选项”发展为“优选方案”,尤其在安全可控、成本优化和本土服务方面展现显著优势。建议企业结合自身技术栈、协同规模与合规要求,选择最适合的制品管理平台。
在云原生与DevOps实践日益成熟的今天,制品库已从“文件的存储站”演进为软件供应链的“中枢神经系统”。它不仅关系着构建产物的管理效率,更直接影响研发协同、安全合规与长期技术演进的能力。 联邦仓库架构支持多节点同步与智能分发,尤其适合跨地域团队协作与高频发布场景。 05.生态集成:打通CI/CD“最后一公里”制品库若不能与研发流程深度融合,很容易成为“信息孤岛”。 嘉为蓝鲸制品管理平台CPack与蓝鲸DevOps体系天然集成,实现从代码构建、制品上传、安全扫描到环境部署的全自动化闭环。制品库的选型,远不止是工具的比较,更是企业研发体系构建的战略决策。 选择合适的制品库,既能保障研发效能,也能筑牢安全防线,助力企业在数字化转型中行稳致远。
引言 为了提升研发中心整体效能,农业银行于2019年启动了DevOps首批试点项目的评估工作,并于2020年5月顺利通过由中国信息通信研究院开展的《研发运营一体化(DevOps)能力成熟度模型》持续交付部分三级评估 一、制品仓库清理的必要性 制品就是构建过程的输出物,包括软件包,测试报告,应用配置文件等可在服务器上直接运行或可查看二进制形式的文件,通常称之为二进制软件制品。 制品管理是对软件研发过程中生成的产物的管理,一般作为最终交付物完成发布和交付。 同时,按照制品成熟度的不同,分为开发阶段制品、测试阶段制品、预投产阶段制品和投产阶段制品。与制品的成熟度相对应,分别建立了四个制品仓库,即开发仓库、测试仓库、预投产仓库、投产仓库。 投产仓库存储将要进行生产部署的制品包,制品数量较少,基于项目组有恢复生产版本的需求,我们按时间存储了最近一年内的制品。
嘉为蓝鲸制品管理平台·CPack:“联邦仓库集群”架构支持多策略同步(实时/定时/触发)、冲突管理和带宽调控,显著提升跨地域分发效率,尤其适合大型集团与跨区域协作场景。 05.生态集成:打通CI/CD“最后一公里”制品库若不与研发流程深度融合,易沦为“孤岛”。 嘉为蓝鲸制品管理平台·CPack:与蓝鲸DevOps体系天然集成,实现从代码构建、制品上传、安全扫描到环境部署的全自动化闭环。开发人员无需切换平台即可完成制品推广,极大提升协作效率。 制品库的选型不仅是一项技术决策,更是企业研发体系构建的战略选择。 选择合适的制品库,既能保障研发效能,也能筑牢安全防线,助力企业在数字化转型中行稳致远。
将制品上传到第三方仓库 以Nexus为例, 通过调用NexusAPI完成制品的上传。 }.jar" -u admin:admin123 else echo "PROJECT_TYPE ERROR [java]" fi 上传到GitLab内置仓库 GitLab仓库可以充当各种常见的包管理器的私有或公共仓库中心。 轻松实现代码基线和流水线构建与制品关联。 目前支持的仓库类型: 实例:使用GitLab Generic 类型仓库 仓库认证 用户个人Token(注意不会关联到Pipeline); CI流水线作业的Token (${CI_JOB_TOKEN
在过往小规模开发时候,由于IT组织间协同问题不大,很多企业是不需要制品库的,但当企业研发工作上了一定规模以后,制品库的作用就开始变得不可或缺。 数字化转型的企业在软件研发规模扩大化、或者尝试敏捷开发转型时,也会通过制品库去保障软件生产到交付的任何一个环节都不出错。 +私服依赖仓库+项目隔离的制品仓库+制品晋级+部署发布”,即可大幅提升企业软件生产的安全性;多地中心模式下:构建“制品安全扫描+CI流水线持续集成+多节点制品管理+制品同步分发+应用发布自动化+多地应用部署 1)国产化技术采用国产技术进行研发与设计,全中文操作界面降低企业工具学习成本的同时,满足国内企业软件国产化需求,守护国内企业软件研发之旅更加稳健与安全。 3)企业级制品管理CPack不仅支持 Generic、Docker、Maven、Gradle、Helm、Npm、PyPI 、Composer、RPM包等常见制品库类型,而且支持仓库代理功能,解决不同仓库管理复杂的问题
WePack 是 CODING 基于腾讯多年制品质量管理的能力,自主研发的制品管理工具,旨在帮助客户逐步替换落后的工具流程,渐进式地实现 DevOps 转型。 [w7XBMCFa5v2qcT9.jpg] 六成企业缺乏制品管理工具,亟需改善 “开发软件中没有制品仓库就如同制造业中没有仓库”,在一项面向各行业头部企业的调研中,六成企业缺乏专业的制品管理工具,仍然在使用磁盘或者构建结果进行管理 四重手段,提升制品管理能力 WePack 具有以下特性帮助企业提高制品管理能力: [bhMRtEd2SGu3pXz.png] 1. 支持 11 种主流制品,统一管理所有制品; 2. 四层管理结构,支撑企业复杂场景; 3. 支持漏洞扫描及依赖分析,降低制品质量风险; 4. 提供精确到仓库的权限控制及审计日志,提供全方位安全管控。 企业 DevOps 转型的过程是一条崎岖之路,CODING 希望可以通过提供更好的产品和服务,帮助客户提升研发效能,获取更大的业务收益。
【引领创新】Gitee Repo 制品管理平台:重塑企业研发安全新格局在数字化转型的浪潮中,企业对研发流程的安全、高效与智能化需求日益增长。 其强大的兼容性,支持主流制品库的迁移,大幅提升了资产检索效率,为企业研发流程的优化提供了有力支撑。 通过制品轨迹与依赖图谱,实现了精准溯源,确保了研发过程中的安全可控。三库分离机制进一步强化了版本管控,为企业的研发安全提供了闭环管控。 智能协作,效率革新Gitee Repo 支持多语言协议与仓库类型,实现了全语言制品管理,打破了团队与工具之间的壁垒。深度集成 DevOps 工具链,实现了端到端的自动化流程,大幅提升了研发效率。 结语:开启制品管理新时代选择 Gitee Repo,企业不仅能够享受到安全可信的制品管理服务,还能实现高效协作,提升研发质量。
针对上述痛点,行业中强有力的制品管理解决方案是:联邦仓库。图片
二. docker 私有仓库 有时候使用 Docker Hub 这样的公共仓库可能不方便, 用户可以创建一个本地仓库供私人使用。 1、docker run -d -p 5000:5000 registry 1)指定私有仓库位置: 用户可以通过指定参数来配置私有仓库位置, 例如配置镜像存储到Amazon S3 服务。 Nexus3作为私有镜像仓库 使用nexus3作为私有仓库是最简单的方式。 2、拉取镜像: docker pull xxxx.com/nginx # 拉取xxxx.com上的nginx镜像,如果没有则拉取失败 3、提交本地镜像nexus仓库: 创建好私有仓库之后 3、k8s的registry认证Secret 当pod从私用仓库拉取镜像时,k8s集群使用类型为docker-registry的Secret来提供身份认证,创建一个名为registry-key的Secret
要破解这一困局,关键在于构建一套集中管控、分布式缓存的统一制品管理体系。本文将深入探讨大型集团如何借助如嘉为蓝鲸制品管理平台·CPack这样的现代制品库,彻底打通协同壁垒,实现高效、可靠的跨地域研发。 3)全球发布时刻,网络成为单点瓶颈场景:集团计划进行一次全球业务更新,需要将新版本服务同时部署到全球多个数据中心。 02.破局之道:构建统一管控、分布式缓存的制品管理体系解决上述问题的核心,是建立一个兼具集中统一管控和分布式高效缓存能力的制品库系统。嘉为蓝鲸CPack的联邦仓库集群架构,正是为此而生。 当一个稳定版本在中央仓库发布后,各区域节点会根据预设策略自动、可靠地完成同步。这确保了全球所有团队所依赖的组件版本是统一且经过验证的,从根源上杜绝了因版本差异导致的集成故障。 借助嘉为蓝鲸制品管理平台·CPack的联邦仓库能力,企业能够将分散的研发力量有效整合,打通信息孤岛,实现版本统一、分发高效、安全可控的全球化研发运营,为企业的持续创新和业务扩张铺设一条坚实的“快车道”。
git是一个分布式版本控制系统,虽然远程仓库不是必须的,但是我们在开发过程中为了便于团队协同开发,所以我们还是会搭建一个远程仓库,本文我们将使用github作为我们的远程仓库来操作。 如此关联ok 二、添加远程仓库 将本地库的内容备份到远程仓库中 在GitHub上创建一个仓库 ? ? 关联远程仓库 本地仓库关联 ? 推送成功后的远程仓库和本地仓库一模一样 ? 首先,登陆GitHub,创建一个新的仓库,名字叫gitRepository2 创建远程仓库 ? ? 克隆到本地 ? ? ? 小结:要克隆一个仓库,首先必须知道仓库的地址,然后使用git clone命令克隆。 Git支持多种协议,包括https,但通过ssh支持的原生git协议速度最快
01、背景:代理仓库的业务画像 在研发领域,制品库扮演着管理制品的关键角色。这里的制品是指由源代码经过编译与打包后生成的二进制文件,这些二进制文件因开发语言的不同而呈现出不同的格式。 具体来说: 1 外部依赖下载缓慢甚至下载失败,影响研发构建速度; 2 跨网段的依赖交付效率低下(有些地方通过手工方式拷贝); 3 依赖安全风险失控,没有准入原则,提升了后期漏洞修复的成本。 然而,这些问题在代理仓库的“魔法”都能得到妥善解决。让我们先通过图 3 看看代理仓库是什么。 代理仓库,在制品库中是一种特殊的仓库,其核心价值在于能够灵活配置代理多个源。 然而,在利用这些宝贵资源的过程中,企业往往会遇到一系列挑战,包括: 1 下载慢,影响研发构建效率; 2 安全风险缺乏管控; 3 网络上希望做隔离,要处理跨网络策略的问题。 在上述的网络结构和部署策略中,DMZ 区上的实例制品主要包括: 1存放已下载、扫描通过的组件依赖; 2代理了不同类型的远程资源; 3聚合了所有的其他存储类型的仓库。