動態

詳情 返回 返回

GitLab CI/CD 作業緩存如何使用 RustFS? - 動態 詳情

GitLab CI/CD 作業緩存(cache)是加速 CI/CD 流水線(Pipeline)執行的重要手段,緩存可以配置使用遠端對象存儲。本文分享如何將新一代高性能分佈式存儲系統配置為 GitLab CI/CD 作業的緩存存儲對象。

關於 RustFS

RustFS 是國內研發團隊開源的一款兼容 S3 的分佈式存儲系統,用 Rust 編寫,經過實測,性能優於 MinIO,能夠平替 MinIO。RustFS 支持二進制、Docker 的安裝方式。本文直接使用 RustFS 官方文檔中二進制的安裝方式進行了安裝。直接執行如下命令:

curl -O https://rustfs.com/install_rustfs.sh && bash install_rustfs.sh

執行成功後可以用默認用户名和密碼(均為 rustfsadmin)通過 localhost:9000進行登錄:

GitLab 安裝本文直接安裝了 GitLab JH 版本,在官網下載安裝頁面根據對應的 OS 進行安裝即可,然後用默認用户名和密碼登錄即可:

在 GitLab 中配置 RustFS在 RustFS 上創建 Bucket在 RustFS 控制枱首頁,點擊創建存儲桶,輸入存儲桶名稱即可創建成功:

在 Runner 中配置 RustFS在 Runner 的配置文件中,添加如下內容:

  [runners.cache]
    MaxUploadedArchiveSize = 0
    Type = "s3"
    Path = "rustfs"
    Shared = false
    [runners.cache.s3]
      ServerAddress = "12.34.56.78:9000"
      AccessKey = "RUSTFS_AccessKey"
      SecretKey = "RUSTFS_SecretKey"
      BucketName = "job-cache"
      BucketLocation = "cn-east-1"
      Insecure = true

然後,創建幾個 CI/CD 作業,作業內容如下:

test-job:
  stage: build
  tags:
    - rustfs
  cache:
    - key:
        files:
          - 3.txt
      paths:
        - rustfs/
    - key:
        files:
          - 4.txt
      paths:
        - rustfs/
  script:
    - cat rustfs/3.txt
    - cat rustfs/4.txt

觸發流水線,可以看到對應的日誌:

在 RustFS 上查看配置的 Bucket job-cache 中是否有數據:

可以看到有數據產生。證明 GitLab 使用了配置的 RustFS bucket。

user avatar ssbunny 頭像 decaday 頭像 8848_62c77d4bb2532 頭像 dongdong_chainwiseweb3 頭像 gongzhengyang 頭像 meiduyandechengzi 頭像 liy 頭像 lzfhope 頭像 yeauty_60d93baf449fd 頭像 photino 頭像
點贊 10 用戶, 點贊了這篇動態!
點贊

Add a new 評論

Some HTML is okay.