JFrog标志JFrog标志
  • hth华体会最新官方网站
  • 解决方案
  • 开发人员
  • 2022世界杯阿根廷预选赛赛程
  • 合作伙伴
  • 定价
  • 成为JFrog的合作伙伴>
  • 找一个JFrog合作伙伴>
  • 得到帮助>
  • 社区>
  • 文档>
用例
  • 世界杯2022赛程时间表
  • 软件供应链安全>
    以devops为中心的整体安全性
  • 2022世界杯预选赛
  • 边缘与物联网>
    管理大规模连接的设备,只需单击一个按钮
行业
  • 世界杯2022赛程时间表最新
  • 汽车工业>
  • 医疗保健服务>
  • 技术与软件>
  • 游戏>
  • 政府>
图
JFrog启用您的DevOps工作流
探索JFrog集成>
学习与指南
  • 用户指南>
  • 知识库>
  • JFrog学院>
  • DevOps咨询服务>
  • DevOps认证>
  • 技术网络研讨会>
  • 研讨会>
  • 什么是DevOps工具?>
抵押品
  • 资源中心>
  • JFrog博客>
客户区
  • 支持>
    客户支持,票务和社区
  • 管理和故障排除>
    更新,检索许可证,合法的等等
  • MyJFrog>
    云客户入口
  • 云的地位>
    服务状态和事件订阅
  • JFrog信任>
    我们如何保护您和您的数据
JFrog平台
端到端DevOps平台为软件供应链提供动力和安全保障
开始
JFrog Artifactory
企业普遍
Repository Manager
x光标志
JFrog x光
SCA, IaC和容器安全与上下文分析
JFrog管道
JFrog管道
面向企业的通用CI/CD DevOps管道
分布图标
JFrog分布
对于可信软件发行版
JFrog货柜注册处
JFrog货柜注册处
强大的,混合Docker和Helm注册表
JFrog连接
JFrog连接
用于连接设备的DevOps
联系我们
开始试验
  • hth华体会最新官方网站
      • JFrog平台
        端到端DevOps平台为软件供应链提供动力和安全保障
      • JFrog Artifactory
        企业普遍
        Repository Manager
      • JFrog x光
        SCA, IaC和容器安全与上下文分析
      • JFrog管道
        面向企业的通用CI/CD DevOps管道
      • JFrog分布
        对于可信软件发行版
      • JFrog货柜注册处
        强大的,混合Docker和Helm注册表
      • JFrog连接
        用于连接设备的DevOps
  • 解决方案
    • 用例
      • 世界杯2022赛程时间表
      • 软件供应链安全
        以devops为中心的整体安全性
      • 2022世界杯预选赛
      • 边缘与物联网
        管理大规模连接的设备,只需单击一个按钮
    • 行业
      • 世界杯2022赛程时间表最新
      • 汽车工业
      • 医疗保健服务
      • 技术与软件
      • 游戏
      • 政府
  • 开发人员
      • 社区
      • 文档
  • 2022世界杯阿根廷预选赛赛程
    • 学习与指南
      • 用户指南
      • 知识库
      • JFrog学院
      • DevOps咨询服务
      • DevOps认证
      • 技术网络研讨会
      • 研讨会
      • 什么是DevOps工具?
    • 抵押品
      • 资源中心
      • JFrog博客
    • 客户区
      • 支持
        客户支持,票务和社区
      • 管理和故障排除
        更新,检索许可证,合法的等等
      • MyJFrog
        云客户入口
      • 云的地位
        服务状态和事件订阅
      • JFrog信任
        我们如何保护您和您的数据
  • 合作伙伴
      • 成为JFrog的合作伙伴
      • 找一个JFrog合作伙伴
      • 得到帮助
  • 定价
博客家

在Bintray Rocks上托管Debian软件包!

通过Yinon亚2014年12月16日

6分钟阅读

分享:

更新:从2021年5月1日起,Bintray服务将不再可用(ConanCenter和JCenter不受影响),欲了解更多信息,请阅读Centers弃用博客

想要分发您的Debian软件包?Bintray是你的工具!Bintray - debian
现在,随着支持的改进,它变得更好了,除了已弃用的“普通”布局之外,还包括当前的Debian存储库格式(又名“自动”布局),以及使用GPG对元数据进行签名。你所需要做的就是上传你的.deb文件,Bintray会自动为你计算和签署元数据(索引)。我们乘坐了Artifactory出色的debian支持并重新应用到Bintray中。

Debian存储库格式,你的意思是什么?

Debian存储库包含元数据文件,其中包含关于它所包含的包及其在存储库中的结构的信息。主要是“包”和“发布”文件。Debian客户端(如apt-get)查找这些元数据文件。

有两种支持的存储库元数据布局:

  • “简单”
    这是已弃用的存储库布局,但它仍然被广泛使用。在这种布局中,所有元数据文件都存储在存储库的根目录中,因此当存储库中只有一堆没有良好定义结构的文件时,这种布局非常有用。
  • “自动”
    这是默认布局,它包含包含的发行版的信息。每个发行版可以包含多个组件(例如“main”,“free”,…),每个组件可以包含多个架构(例如“amd64”,“i386”,…)

签署Debian发行版

Debian有一个很好的特性来增加客户的信任——让他们确信他们下载的是你的包,而不是其他的假包。这是通过使用GPG对“发布”文件进行签名来完成的。每个“发布”文件包括发行版中所有相关“包”文件的散列值。“Packages”文件包括所有包含的.deb文件的散列值。因此,通过签署“发布”文件,它实际上签署了整个发行版!

你可以让Bintray自动签署你的元数据与GPG。您所需要做的就是为拥有存储库的用户或组织设置GPG密钥。您甚至可以要求您的GPG密钥需要一个密码短语(请继续阅读)。不想设置GPG键?不用担心,您的元数据仍然在那里,只是没有签名。请记住,您的客户需要批准使用您的unsigned存储库。

上传和发布Debian文件

您可以使用REST API或从Bintray的UI上传文件。如果你的存储库有“自动”布局,Bintray需要知道每个发行版中包含哪个.deb文件,因此每个上传的.deb文件必须与它应该包含的发行版、组件和架构一起分配。

请在存储库的“陷害我!链接中有一些关于如何配置的快速提示:

debian_setmeup_upload

例如,让我们考虑一个名为myorg有一个分布叫做mydist这就维持了主要组件。现在让我们假设对于0.0.1版本,我们开发了一个名为mypack为i386架构,但它也是由amd64.在Bintray中,我们将这个包存储在一个名为mypack,为了保持一致性,我们将调用版本0.0.1(尽管这不是严格要求的)。根据“Automatic”布局的约定,我们将.deb文件存储在以下路径:

“池/主/ m / mypack”

使用REST API,上传.deb文件,指定目标文件路径,并设置与分发相关的信息是非常简单的:

curl -X PUT -T libmypack_0.1 .1_i386.deb -umyuser: https://api.bintray.com/content/myorg/myrepo/mypack/0.0.1池/主/ m / mypack / libmypack_0.0.1_i386.deb; deb_distribution =mydist; deb_component =主要; deb_architecture =i386,amd64

为了发布你的工件,只需在上面的请求中添加“publish=1”HTTP矩阵参数,或者使用publish REST API:

curl -X POST -umyuser: https://api.bintray.com/content/myorg/ myrepo /mypack/0.0.1/出版

你的GPG密钥需要密码?不是问题-只需添加一个“X-GPG-PASSPHRASE”请求头与您的密码。这可以在upload API(带有" publish=1 ")和publish API中完成:

X-GPG-PASSPHRASE:密码

触发元数据计算

如果您的GPG密钥需要密码短语,但没有提供,那么您的元数据将被计算,但不会被签名(例如,当使用Bintray UI上传包时,当前无法指定密码短语)。为了解决这个问题,你应该使用REST API,在那里你可以指定密码短语并触发元数据计算:

curl -X POST -H " X-GPG-PASSPHRASE: passphrase " -umyuser: https://api.bintray.com/calc_metadata/myorg/ myrepo /

关于REST API的更多信息可以在Bintray文档中找到。

下载Debian软件包

如果你使用默认的“自动”布局,你在Bintray中的Debian存储库可以用作个人包存档(PPA)。为了让用户获得您的包,他们所需要做的就是将您的存储库添加到他们的源列表中。例如,当使用apt-get时,要添加myrepo库的myorg时,应将以下行添加到“sources.”列出“文件”(在“/etc/apt/sources.list”):

deb https://dl.bintray.com/v1/content/myorg/ myrepomydist主要

或者,你也可以使用“Software Sources”管理UI添加存储库URL:

debian_software_updates

一旦“来源”。列表”设置后,您的用户可以获取和安装您的mypack从您的mydist分布和主要组件使用:

$ apt-get installmypack

总结

所以,Debian和Bintray是携手并进的。您可以获得Debian发行版所需的一切——自动元数据计算、GPG签名、下载统计、新发布通知,以及一个全自动、超级可靠和快速的下载平台。这是除了所有其他伟大的功能Bintray。现在你可以专注于开发你的软件包- Bintray将负责分发!

标签: debian

分享:

注册博客更新

受欢迎的标签

  • CI / CD
  • Artifactory
  • 最佳实践
  • DevOps
  • x光

试试JFrog平台

在云端或自托管

开始试验

或预约演示

hth华体会最新官方网站

  • Artifactory
  • x光
  • 管道
  • 分布
  • 容器注册表
  • 连接
  • JFrog平台
  • 开始免费

2022世界杯阿根廷预选赛赛程

  • 博客
  • 事件
  • 集成
  • 用户指南
  • DevOps的工具
  • 开源
  • 特色
  • JFrog信任
  • 比较JFrog

公司

  • 关于
  • 管理
  • 投资者关系
  • 合作伙伴
  • 客户
  • 职业生涯
  • 新闻
  • 联系我们
  • 品牌指导方针

开发人员

  • 社区
  • 下载
  • 社区活动
  • 开源基金会
  • 社区论坛
  • Superfrogs
关注我们
©2023 JFrog Ltd版权所有
JFrog标志
使用条款 | 隐私政策 | 饼干的政策 |
cookie设置
| 可访问性模式

成功

你的行动是成功的

哎呀……出了问题

请稍后再试

信息

青蛙的手

模态信息