← 記事一覧に戻る

AstroのブログをCloudflare Workersで公開する

MarkdownをGitHubで管理し、mainへのpushから公開する。このブログのファイル構成とビルド設定。

このブログはAstroで静的ファイルを生成し、Cloudflare WorkersのStatic Assetsで配信しています。記事とサイトのコードは、同じGitHubリポジトリで管理する構成です。

ファイルの置き場所

src/content/blog/     記事のMarkdown
src/pages/            一覧・記事・検索などのページ
src/styles/           共通のCSS
astro.config.mjs      静的出力と公開URL
wrangler.jsonc        Worker名と配信ドメイン

記事は先頭にYAMLで情報を書き、続けて本文を置きます。

---
title: Astroのビルド設定
description: 静的出力と公開URLの設定。
pubDate: 2026-10-28
tags: [Astro, 学習]
category: 学習ノート
---

starting-with-astro.mdのようなファイル名が、/blog/starting-with-astro/というURLになります。

mainから公開する

mainへのpushをCloudflare Workers Buildsが受け取り、次の順で実行します。

npm run check && npm run build
npx wrangler deploy

生成先はdist/、Worker名はmarcy-blogです。wrangler.jsoncでblog.marcy.appをCustom Domainとして指定しています。

下書きの扱い

draft: trueの記事と未来の日付の記事は、ビルド時に出力から除外します。日付が来ただけでは配信中の内容は変わらないため、公開する時点で再ビルドが必要です。

すべての記事へ