在 AWS Amplify 上托管
在 AWS Amplify 上托管您的网站。
使用这些说明从 GitHub 仓库启用持续部署。如果您使用 GitLab 进行版本控制,适用相同的一般步骤。
前提条件
请在继续之前完成以下任务:
- 创建 AWS 账户
- 登录 您的 AWS 账户
- 创建 GitHub 账户
- 登录 您的 GitHub 账户
- 创建 项目的 GitHub 仓库
- 创建 项目的本地 Git 仓库,并带有指向 GitHub 仓库的 远程 引用
- 在本地 Git 仓库中创建 Hugo 网站,并使用
hugo server命令测试 - 将更改提交到本地 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 按钮查看已发布的网站。
