DevOps - JFrog Artifactory


1 - 簡介

1.1 制品庫的概念

即構建過程的輸出物,包括軟件包,測試報告,應用配置文件等可在服務器上直接 運行或可查看二進制形式的文件,通常稱之為二進制軟件制品。
不同開發語言 所產生的制品的獲取、使用、共享方式不同,不同的制品倉庫能夠管理各自開發語言類型的二進制制品。
制品管理是對軟件研發過程中生成的產物的管理, 一般作為最終交付物完成發布和交付。所有的制品包,依賴組件均能夠納入統一 制品庫中統一管理。
制品庫應作為測試及生產部署的唯一可信制品來源。

1.2 JFrog Artifactory

目前全球唯一支持所有開發語言,任意維度的元數據檢索、跨語言正反向依賴分析,並同時擁有深度遞歸、支持多活異地災備的企業級、高可用二進制制品管理倉庫。

鏈接

下載

生態環境

工具間的關系

1.3  功能列表

## 語言&工具支持
    Maven、Docker、Bower(html&js)、Chef、Puppet、CocoaPods(IOS)、Conan(C/C++)、Debian、Ruby Gems、Git LFS、Gradle、Ivy、Npm、Nuget、Opkg、Php composer、Pypi、SBT、Vagrant(box)、Rpm、Generic(通用)

## 多 Docker 鏡像注冊中心
    支持多 Docker 鏡像注冊中心,用戶可以做 Docker 鏡像的流水線 Promotion。
    刪除 Docker 鏡像時不需要停服。

## 支持 REST API
    全面覆蓋的 REST API。與 UI 松耦合,可以基於 REST API 實現自己的 UI。

## 元數據
    支持自定義屬性以及屬性集到任何 Layout 的二進制文件上;
    可以基於這些屬性進行過濾搜索,並且支持Restful 方式搜索;
    跨地域遠程代理倉庫之間可以同步屬性,管理異地協同開發。

## CI 集成
    Artifactory
    收集所有構建相關環境信息。
    收集發布以及依賴的模塊信息。
    支持構建 Promotion 升級。
    建立二進制文件和構建的關系,多維度管理二進制文件生命周期。支持可視化的正-反向依賴關系展示。

## Checksum 檢查
    在上傳時檢查 Checksum,若發現該文件已經被上傳過,則不重復上傳。
    若文件丟失 Checksum,會重新計算並記錄。

## 主動並發下載依賴
    支持主動並發下載相關的依賴。例如 A依賴 B,B 依賴 C,Artifactory 在下載 A 的同時,會並發的下載 B 和 C。

## 任意全局查詢
    提供 AQL(Artifactory Query Language)支持任何條件的查詢,包括排序,過濾,返回字段等等。

## 深度文件查詢
    支持在任意可解壓文件里搜索類文件,並提供地址。例如:在任意 Jar 包里找到 .Class 文件。

## 倉庫數據統計
    提供倉庫大小,實際存儲大小,文件數量,下載量,上傳者等統計

## 查看 Jar 文件
    能夠查看 Jar文件里的任何內容,包括 Jar 文件里的源代碼。

## 倉庫復制
    支持文件夾級別的文件實時復制。支持並發多地復制(Multi-Push)保證多地倉庫的一致性。

## 支持高可用
    支持0宕機時間的高可用集群,並且可以自由水平擴展。支持 Active-Active 高可用。
    
## 數據庫存儲
    安裝包默認綁定 Apache Derby。
    支持MySQL,PostgreSQL,Oracle,MS SQL Server。

2 - Docker方式運行JFrog Artifactory

https://www.jfrog.com/confluence/display/RTF/Installing+with+Docker
Pull Latest Artifactory Docker Image

docker pull docker.bintray.io/jfrog/artifactory-oss

docker run \
   --name artifactory \
   -u root \
   -d \
   -p 8083:8083 \
   -v artifactory_data:/var/opt/jfrog/artifactory \
   -v /var/run/docker.sock:/var/run/docker.sock \
   docker.bintray.io/jfrog/artifactory-oss

配置artifactory
通過 localhost:8083/artifactory 添加管理員密碼等操作,顯示artifactory已正確安裝;

  • 設置管理員賬號:  使用默認的admin/password,以后再改
  • 設置代理:  如無必要, 跳過
  • 新建代碼倉庫: 選擇倉庫類型,  其余默認即可
    通過在jenkins中安裝artifactory插件,並在系統管理中添加配置artifactory服務器,測試連接獲取到artifactory的版本。

3 - JFrog 公網倉庫

https://repo.jfrog.org/artifactory/webapp/

4 - JFrog Container Registry

https://www.jfrog.com/confluence/display/JFROG/JFrog+Container+Registry
JFrog Artifactory目前已經成為高可用,高並發 Docker 鏡像中心的首選方案.
JCR (JFrog Container Registry)是JFrog Artifactory 發布免費社區版Docker鏡像倉庫,支持 Docker ,Helm 和通用倉庫。
目前已支持免費下載和使用:

4.1 Docker images

4.2 JFrog 容器鏡像倉庫功能

  • 最穩定的 Docker 鏡像中心,服務眾多企業用戶。
  • 支持 Docker ,Helm 和通用倉庫, 可以用於存儲任何類型的制品,例如.zip, .war, .tar等
  • 支持本地/遠程/虛擬倉庫,能夠為所有研發團隊提供統一的倉庫地址
  • 支持豐富的Docker鏡像元數據,用於標識和記錄Docker 鏡像的生命周期信息
  • 支持鏡像的升級(Promotion)
  • 支持實時鏡像物理刪除
  • 支持本地部署和 SaaS 版本

4.3 功能對比

5 - 參考信息


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM