為你的 Rust 應用程式配置 CI/CD
先決條件
完成本指南的先前部分,從開發你的 Rust 應用程式開始。你必須擁有一個 GitHub 賬戶和一個 Docker 賬戶才能完成此部分。
概述
在本節中,你將學習如何設定和使用 GitHub Actions 來構建你的 Docker 映象並將其推送到 Docker Hub。你將完成以下步驟:
- 在 GitHub 上建立一個新倉庫。
- 定義 GitHub Actions 工作流程。
- 執行工作流程。
第一步:建立倉庫
建立一個 GitHub 倉庫,配置 Docker Hub 憑據,並推送您的原始碼。
在 GitHub 上建立一個新倉庫。
開啟倉庫的 Settings,然後進入 Secrets and variables > Actions。
建立一個名為
DOCKER_USERNAME
的新 Repository variable,並將其值設定為您的 Docker ID。為 Docker Hub 建立一個新的個人訪問令牌 (PAT)。你可以將此令牌命名為 `docker-tutorial`。確保訪問許可權包括讀和寫。
將 PAT 作為 Repository secret 新增到您的 GitHub 倉庫中,名稱為
DOCKERHUB_TOKEN
。在你的機器上的本地倉庫中,執行以下命令以將源更改為你剛建立的倉庫。請務必將 `your-username` 更改為你的 GitHub 使用者名稱,並將 `your-repository` 更改為你建立的倉庫的名稱。
$ git remote set-url origin https://github.com/your-username/your-repository.git
執行以下命令以暫存、提交併將您的本地倉庫推送到 GitHub。
$ git add -A $ git commit -m "my commit" $ git push -u origin main
第二步:設定工作流程
設定您的 GitHub Actions 工作流程,用於構建、測試並將映象推送到 Docker Hub。
前往您在 GitHub 上的倉庫,然後選擇 Actions 選項卡。
選擇 set up a workflow yourself。
這會將您帶到一個頁面,您可以在其中建立新的 GitHub Actions 工作流程檔案,預設路徑為
.github/workflows/main.yml
。在編輯器視窗中,複製並貼上以下 YAML 配置。
name: ci on: push: branches: - main jobs: build: runs-on: ubuntu-latest steps: - name: Login to Docker Hub uses: docker/login-action@v3 with: username: ${{ vars.DOCKER_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Build and push uses: docker/build-push-action@v6 with: push: true tags: ${{ vars.DOCKER_USERNAME }}/${{ github.event.repository.name }}:latest
有關
docker/build-push-action
的 YAML 語法的更多資訊,請參閱GitHub Action README。
第三步:執行工作流程
儲存工作流程檔案並執行作業。
選擇 Commit changes... 並將更改推送到
main
分支。推送提交後,工作流程會自動啟動。
轉到 Actions 選項卡。它會顯示工作流程。
選擇工作流程將顯示所有步驟的詳細資訊。
工作流程完成後,請訪問您在Docker Hub 上的倉庫。
如果您在該列表中看到新倉庫,則表示 GitHub Actions 已成功將映象推送到 Docker Hub。
摘要
在本節中,你學習瞭如何為你的 Rust 應用程式設定 GitHub Actions 工作流。
相關資訊
後續步驟
接下來,瞭解如何在部署之前在 Kubernetes 上本地測試和除錯您的工作負載。