コンテンツにスキップ

AstroサイトをGitHub Pagesにデプロイする

GitHub Pagesを使って、GitHub.com上のリポジトリから直接Astroウェブサイトをホストすることができます。

GitHub Actionsを使うことで、AstroサイトをGitHub Pagesに自動的にビルドしてデプロイすることができます。これを行うには、ソースコードがGitHubでホストされている必要があります。

Astroは公式のwithastro/actionを保守しており、ほとんど設定することなくプロジェクトをデプロイすることができます。以下の手順に従って、AstroサイトをGitHubページにデプロイしてください。さらに詳しい情報が必要な場合は、パッケージのREADMEを参照してください。

  1. astro.config.mjssite と、必要に応じて base オプションを設定します。

    astro.config.mjs
    import { defineConfig } from 'astro/config'
    export default defineConfig({
    site: 'https://astronaut.github.io',
    base: '/my-repo',
    })
    • sitehttps://<YOUR_USERNAME>.github.io または https://my-custom-domain.com である必要があります。
    • base には、/my-repo のように、スラッシュで始まるリポジトリ名を指定します。これは、Astro があなたのウェブサイトのルートがデフォルトの / ではなく my-repo であることを理解するためです。
  2. プロジェクトの .github/workflows/deploy.yml に新しいファイルを作成し、以下のYAMLを貼り付けます。

    deploy.yml
    name: Deploy to GitHub Pages
    on:
    # `main` ブランチにプッシュするたびにワークフローを実行します
    # 異なるブランチ名を使用する場合は、`main` をブランチ名に置き換えてください
    push:
    branches: [ main ]
    # このワークフローを GitHub の Actions タブから手動で実行できるようにします。
    workflow_dispatch:
    # このジョブがリポジトリをクローンし、ページデプロイメントを作成することを許可します。
    permissions:
    contents: read
    pages: write
    id-token: write
    jobs:
    build:
    runs-on: ubuntu-latest
    steps:
    - name: Checkout your repository using git
    uses: actions/checkout@v4
    - name: Install, build, and upload your site
    uses: withastro/action@v1
    # with:
    # path: . # リポジトリ内のAstroプロジェクトのルートロケーション。(オプション)
    # node-version: 18 # サイト構築に使用するNodeのバージョン。デフォルトは18です。(オプション)
    # package-manager: pnpm@latest # 依存関係のインストールとサイトのビルドに使用する Node パッケージマネージャ。ロックファイルに基づいて自動的に検出されます。(オプション)
    deploy:
    needs: build
    runs-on: ubuntu-latest
    environment:
    name: github-pages
    url: ${{ steps.deployment.outputs.page_url }}
    steps:
    - name: Deploy to GitHub Pages
    id: deployment
    uses: actions/deploy-pages@v1
  3. GitHubで、リポジトリのSettingsタブに行き、設定のPagesセクションを見つけてください。

  4. サイトのSourceとしてGitHub Actionsを選択します。

  5. 新しいワークフローファイルをコミットし、GitHubにプッシュします。

これでサイトが公開されたはずです!Astroプロジェクトのリポジトリに変更をプッシュすると、GitHub Actionが自動的にデプロイしてくれます。

その他のデプロイガイド