中文字幕无码系列专区|92国产精品午夜福利|久久久综合九色综合88|国产天天看免费无码在线|国产精品黄国产在线综合网|韩国三级在线视频一区二区|伊人久久大香线蕉AV网址|国产精品美女一区二区三区不卡污

北京數(shù)據(jù)家科技股份有限公司-數(shù)據(jù)家,idc官網(wǎng),算力,裸金屬,高電機(jī)房,邊緣算力,云網(wǎng)合一,北京機(jī)房 北京數(shù)據(jù)家科技股份有限公司-數(shù)據(jù)家,idc官網(wǎng),算力,裸金屬,高電機(jī)房,邊緣算力,云網(wǎng)合一,北京機(jī)房

新聞中心

數(shù)據(jù)家,idc官網(wǎng),算力,裸金屬,高電機(jī)房,邊緣算力,云網(wǎng)合一,北京機(jī)房,北京云計算,北京邊緣計算,北京裸金屬服務(wù)器,北京數(shù)據(jù)服務(wù)器,北京GPU服務(wù)器,高算力服務(wù)器,數(shù)據(jù)機(jī)房相關(guān)技術(shù)新聞最新報道

使用GitHub Actions自動化部署FTP

2024-03-14 11:23:16

傳統(tǒng)的 Web 開發(fā)人員常常喜歡通過 FTP 服務(wù)器直接編輯文件,而不是使用版本控制系統(tǒng),主要原因是因為部署方便。

利用 GitHub actions 可以非常簡單地實現(xiàn)自動化部署。本文為大家展示一個基本的 PHP 示例。

1 開始使用 GitHub Actions

首先轉(zhuǎn)到存儲庫并單擊“操作”選項卡。然后創(chuàng)建工作流程。

圖片圖片

可以創(chuàng)建多個操作。這基本上會創(chuàng)建一個名為 .github/workflows 的文件夾結(jié)構(gòu)。

在此文件夾下創(chuàng)建 .yml 文件,以設(shè)置有關(guān)操作的規(guī)則。

2 部署 PHP 應(yīng)用程序

以下是 PHP 示例的 FTP 部署操作:

on: push
name: ?? Deploy website on push
jobs:
  web-deploy:
    name: ?? Deploy
    runs-on: ubuntu-latest
    steps:
    - name: ?? Get latest code
      uses: actions/checkout@v3

    - name: PHP Version
      run: php --version

    - name: Validate composer.json and composer.lock
      run: composer validate

    - name: Get Composer cache directory
      id: composer-cache
      #run: echo "::set-output name=dir::$(composer config cache-files-dir)"
      run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT

    - name: Cache Composer vendor directory
      uses: actions/cache@v3
      with:
        path: ${{ steps.composer-cache.outputs.dir }}
        key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
        restore-keys: |
          ${{ runner.os }}-composer-
    - name: Install PHP dependencies
      run: composer install --no-progress --no-dev --optimize-autoloader

    - name: ?? Sync files
      uses: SamKirkland/FTP-Deploy-Action@v4.3.4
      with:
        server: ${{ secrets.FTP_SERVER }}
        username: ${{ secrets.FTP_USERNAME }}
        password: ${{ secrets.FTP_PASSWORD }}
        local-dir: ./
        server-dir: ./api/
        log-level: verbose

解釋一下規(guī)則;

  • on: 這是確定操作何時運行的地方。
  • name: 上文提到可以有多個操作,這是此操作的名稱。
  • steps: 在同步操作之前設(shè)置步驟。在此示例中,檢查 composer 文件和 PHP 版本,還使用另一個操作來緩存供應(yīng)商文件。

idc網(wǎng),算力,裸金屬,高電機(jī)房,邊緣算力,云網(wǎng)合一,北京機(jī)房,北京云計算,北京邊緣計算,北京裸金屬服務(wù)器,北京數(shù)據(jù)服務(wù)器,北京GPU服務(wù)器,高算力服務(wù)器,數(shù)據(jù)機(jī)房最后,使用 FTP-Deploy-Action 將文件上傳到服務(wù)器。

對于此部分,可以在 GitHub 密鑰中存儲。

圖片圖片

基本注意事項:

**local-dir: ** 此參數(shù)表示,可以指定 Git 倉庫中的特定文件夾。

**server-dir: ** 此參數(shù)則指定了服務(wù)器上的文件夾。在示例中,直接將文件推送到了 /api/ 文件夾中。