コンテンツにスキップ
This is an unmaintained snapshot of the Astro v4 docs. View the latest docs.

AstroサイトをGoogle Cloudにデプロイする

フル機能のWebアプリホスティングプラットフォームGoogle Cloudで、Astroサイトをデプロイできます。

  1. 新しいGCPのプロジェクトを作成、または既存のプロジェクトを選択します。

  2. Cloud Storageで新しいバケットを作成します。

  3. バケットに名前を付け、その他必要な設定を行います。

  4. distフォルダをバケットにアップロードするか、Cloud Buildを使用してアップロードします。

  5. 新しくStorage オブジェクト閲覧者という権限をallUsersに追加して、公開アクセスを有効にします。

  6. Webサイトの設定を編集し、エントリポイントとしてìndex.htmlを、エラーページとして404.htmlを追加します。

Cloud Runはインフラストラクチャを管理せずにコンテナを実行できるサーバーレスプラットフォームです。 静的サイトとSSRサイトの両方のデプロイに使用できます。

  1. 新しいGCPのプロジェクトを作成、または既存のプロジェクトを選択します。

  2. Cloud Run APIが有効になっていることを確認してください。

  3. 新しいサービスを作成します。

AstroのサイトをCloud Runにデプロイする前に、コンテナのビルドに使用されるDockerfileを作成する必要があります。AstroでDockerを使用する方法の詳細はレシピセクションをご覧ください。

Dockerfileが作成されたら、イメージをビルドしてGoogle Cloudにプッシュします。これを実現するには、いくつかの方法があります:

Dockerを使用してローカルでビルドする:

docker buildコマンドを使用してイメージをビルドし、docker tagでタグを付け、docker pushでレジストリにプッシュします。Google Cloud の場合、Artifact Registryが最も簡単なオプションですが、Docker Hubを使用することもできます。

ターミナルウィンドウ
# コンテナをビルドします
docker build .
docker tag SOURCE_IMAGE HOSTNAME/PROJECT-ID/TARGET-IMAGE:TAG
# イメージをレジストリにプッシュします
docker push HOSTNAME/PROJECT-ID/IMAGE:TAG

プロジェクトに合わせて、上記のコマンド内の次の値を変更します。

  • SOURCE_IMAGE: ローカルイメージ名またはイメージID。
  • HOSTNAME: レジストリのホスト(gcr.io, eu.gcr.io, asia.gcr.io, us.gcr.io)。
  • PROJECT: Google CloudのプロジェクトID。
  • TARGET-IMAGE: レジストリに保存された時のイメージ名。
  • TAGはイメージに関連付けられたバージョンです。

詳細はGoogle Cloudのドキュメントをご覧ください。

他のツールを使用する:

GitHub Actionsのような、DockerをサポートするCI/CDツールを使用できます。

Cloud Buildを使用してビルドする:

Dockerfileをローカルでビルドする代わりに、イメージをリモートでビルドするようにGoogle Cloudに指示できます。Google Cloud Buildのドキュメントを参照してください。

デプロイはgcloudを使用してターミナルで手動で行うことも、Cloud Buildやその他のCI/CDシステムを使用して自動的に行うこともできます。

その他のデプロイガイド

貢献する

どんなことを?

GitHub Issueを作成

チームに素早く問題を報告できます。

コミュニティ