HUGO
Menu
GitHub 87548 stars Mastodon

在 AWS Amplify 上托管

在 AWS Amplify 上托管您的網站。

使用這些說明從 GitHub 倉庫啟用持續部署。如果您使用 GitLab 進行版本控制,適用相同的一般步驟。

前提條件

請在繼續之前完成以下任務:

  1. 創建 AWS 賬戶
  2. 登錄 您的 AWS 賬戶
  3. 創建 GitHub 賬戶
  4. 登錄 您的 GitHub 賬戶
  5. 創建 項目的 GitHub 倉庫
  6. 創建 項目的本地 Git 倉庫,並帶有指向 GitHub 倉庫的 遠程 引用
  7. 在本地 Git 倉庫中創建 Hugo 網站,並使用 hugo server 命令測試
  8. 將更改提交到本地 Git 倉庫並推送到 GitHub 倉庫。

步驟

此步驟將從 GitHub 倉庫啟用持續部署。如果您使用 GitLab 或 Bitbucket,步驟基本相同。

步驟 1
在項目根目錄創建名為 amplify.yml 的文件。
touch amplify.yml
步驟 2
將下面的 YAML 復制並粘貼到您創建的文件中。根據需要更改應用程序版本和時區。
amplify.yml
version: 1
env:
  variables:
    # 應用程序版本
    DART_SASS_VERSION: 1.97.3
    GO_VERSION: 1.25.6
    HUGO_VERSION: 0.155.3
    # 時區
    TZ: Europe/Oslo
    # 緩存
    HUGO_CACHEDIR: ${PWD}/.hugo
    NPM_CONFIG_CACHE: ${PWD}/.npm
frontend:
  phases:
    preBuild:
      commands:
        # 為用戶特定的可執行文件創建目錄
        - echo "Creating directory for user-specific executable files..."
        - mkdir -p "${HOME}/.local"

        # 安裝 Dart Sass
        - echo "Installing Dart Sass ${DART_SASS_VERSION}..."
        - curl -sLJO "https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz"
        - tar -C "${HOME}/.local" -xf "dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz"
        - rm "dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz"
        - export PATH="${HOME}/.local/dart-sass:${PATH}"

        # 安裝 Go
        - echo "Installing Go ${GO_VERSION}..."
        - curl -sLJO "https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz"
        - tar -C "${HOME}/.local" -xf "go${GO_VERSION}.linux-amd64.tar.gz"
        - rm "go${GO_VERSION}.linux-amd64.tar.gz"
        - export PATH="${HOME}/.local/go/bin:${PATH}"

        # 安裝 Hugo
        - echo "Installing Hugo ${HUGO_VERSION}..."
        - curl -sLJO "https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz"
        - mkdir "${HOME}/.local/hugo"
        - tar -C "${HOME}/.local/hugo" -xf "hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz"
        - rm "hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz"
        - export PATH="${HOME}/.local/hugo:${PATH}"

        # 驗證安裝
        - echo "Verifying installations..."
        - "echo Dart Sass: $(sass --version)"
        - "echo Go: $(go version)"
        - "echo Hugo: $(hugo version)"
        - "echo Node.js: $(node --version)"

        # 安裝 Node.js 依賴
        - echo "Installing Node.js dependencies..."
        - "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci --prefer-offline || true"

        # 配置 Git
        - echo "Configuring Git..."
        - git config core.quotepath false
    build:
      commands:
        - echo "Building site..."
        - hugo --gc --minify
  artifacts:
    baseDirectory: public
    files:
      - '**/*'
  cache:
    paths:
      - ${HUGO_CACHEDIR}/**/*
      - ${NPM_CONFIG_CACHE}/**/*
步驟 3
提交並將更改推送到您的 GitHub 倉庫。
git add -A
git commit -m "Create amplify.yml"
git push
步驟 4
登錄您的 AWS 賬戶,導航到 [Amplify 控制台],然後按 Deploy an app 按鈕。
步驟 5
選擇源代碼提供商,然後按 Next 按鈕。 屏幕截圖
步驟 6
授權 AWS Amplify 訪問您的 GitHub 賬戶。 屏幕截圖
步驟 7
選擇您的個人賬戶或相關組織。 屏幕截圖
步驟 8
授權訪問一個或多個倉庫。 屏幕截圖
步驟 9
選擇倉庫和分支,然後按 Next 按鈕。 屏幕截圖
步驟 10
在"App settings"頁面,滾動到底部然後按 Next 按鈕。Amplify 讀取您在步驟 1-3 中創建的 amplify.yml 文件,而不是使用此頁面上的值。
步驟 11
在"Review"頁面,滾動到底部然後按 Save and deploy 按鈕。
步驟 12
當您的網站部署完成後,按 Visit deployed URL 按鈕查看已發布的網站。 屏幕截圖

Last updated: January 1, 0001
Improve this page