36
27

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Cloudflare Pages で自動デプロイ、アクセス解析付きの Web サイトを公開しよう

Last updated at Posted at 2024-02-05

はじめに

2/10 のイベントに先駆けて、社内で開催する Cloudflare 勉強会のための資料です

前回の記事で Cloudflare のアカウントを作りました

今回の記事では Cloudflare Pages で Web サイトを公開します

Cloudflare Pages とは

フロントエンド開発者のためのフルスタックプラットフォーム

Cloudflare Pages では、 GitHub のリポジトリーを指定することで Web サイトを自動デプロイできます

実装から公開、運用まで、細かいことを考えずにフロントエンドが作れてしまうプラットフォームになっています

アジリティー(機敏性)が求められる昨今、アイデアを思いついてから公開するまでの速さが命と言っても過言ではありません

また、フィードバックを受けてからの対応速度も必要です

フロントエンドに必要な全てをすぐに用意できる Cloudflare Pages は、まさに今求められるプラットフォームと言えるでしょう

事前準備

公開する Web サイトのコードを準備します

今回は簡便のため、既存の Git リポジトリーを Fork (コピー)して使います

以下のリンクを開いてください

右上の方にある「Fork」をクリックします

スクリーンショット 2024-02-01 22.56.51.png

「Owner」に自分の GitHub リポジトリーを選択し、右下「Create fork」をクリックします

スクリーンショット 2024-02-01 22.57.40.png

自分の GitHub アカウント内にリポジトリーのコピーが作成されました

リポジトリー内の index.html を開いてみましょう

スクリーンショット 2024-02-02 16.11.07.png

単純に「Hello, World」と表示するだけのページになっています

Pages を始めましょう

ログイン

前回の記事にも書いた通り、 Cloudflare Pages はクレジットカード登録不要の Free プランで無料から使えます

Cloudflare にログインして、 Pages を始めましょう

ログインしたら、ホーム画面(ダッシュボード)が表示されます

スクリーンショット 2024-02-01 22.46.13.png

英語表示になっている場合、右上で言語を日本語に設定しましょう

セットアップ

左メニューから「Workers & Pages」をクリックして「Workers & Pages を始めましょう」というページに遷移します
「Workers」「Pages」と並んでいるタブのうち、「Pages」をクリックします
「Git に接続」をクリックしてください

スクリーンショット 2024-01-26 17.14.45.png

「アカウントからサイトをデプロイする」という画面に遷移します
「GitHUb に接続」をクリックします

スクリーンショット 2024-01-26 17.15.51.png

GitHub の認証後、権限設定の画面が表示されます
「All repositories」もしくは「Only select repositories」を選択し、「Save」をクリックします

「Save」が非活性でクリックできない場合、ラジオボタンを選択し直すと活性化されます

スクリーンショット 2024-01-26 17.17.40.png

GitHub リポジトリーの選択画面に遷移するので、 Fork しておいたリポジトリーを選択し、「セットアップの開始」をクリックします

スクリーンショット 2024-01-26 17.19.06.png

「ビルドとデプロイのセットアップ」画面が開きます
プロジェクト名には他の人と重複しないような名前を入力してください
ブランチやフレームワーク、ビルドコマンド、環境変数等、より詳細な設定も可能です

今回は素の HTML なので、何も変更せず「保存してデプロイする」をクリックします

スクリーンショット 2024-01-26 17.20.30.png

初回のビルドが開始され、ビルド状況、デプロイ状況がログに表示されます

デプロイが完了したら「プロジェクトに進む」をクリックします

スクリーンショット 2024-01-26 17.22.08.png

プロジェクトのページに「最初の展開が完了しました。」と表示されています
中段にある「ドメイン」の右にリンクがあるので、クリックして開きます

スクリーンショット 2024-01-26 17.22.49.png

GitHub リポジトリーに用意しておいた index.html がそのまま表示されました

スクリーンショット 2024-01-26 17.24.23.png

リポジトリーの更新

GitHub のリポジトリーで index.html を開き、右上の鉛筆アイコンをクリックします

スクリーンショット 2024-02-02 16.14.07.png

編集モードになるので、適当に一部を変更してから「Commit changes...」をクリックします

スクリーンショット 2024-02-02 16.15.22.png

コミットメッセージを適当に入力して「Commit changes」をクリックします

スクリーンショット 2024-02-02 16.16.54.png

この状態で Cloudflare のプロジェクトページを開くと、デプロイが1件増えています

スクリーンショット 2024-02-02 16.18.23.png

デプロイしたページを開くと、変更が反映されたことを確認できます

スクリーンショット 2024-02-02 16.19.36.png

各デプロイの「詳細を表示」をクリックすると、デプロイのログを確認できます

スクリーンショット 2024-02-02 16.22.20.png

アクセス解析の追加

Cloudflare では無料でアクセス解析ができるようになっています

プロジェクトページの「設定」タブを開きます
下の方にある「Web Analitics を有効にする」をクリックしてください

スクリーンショット 2024-01-26 17.40.12.png

デプロイした Web サイトのアクセス状況が確認できるようになります

スクリーンショット 2024-02-02 16.25.18.png

ドメインの設定

Cloudflare ではドメインを登録することもできます

有料なのでクレジットカードの登録が必要です

プロジェクトにカスタムドメインを指定することも可能です

Vue を使った Web サイトのデプロイ

公式ドキュメントに従って、 Vue を使った Web サイトをデプロイしてみましょう

Vue プロジェクトの作成

Node.js と Git CLI が必要です

必要な環境がローカルにない場合、ここは見るだけにしてください

任意のディレクトリー内で以下のコマンドを実行します

npm create cloudflare@latest my-vue-app -- --framework=vue

以下のように訊かれるので、そのまま Enter を押します

Need to install the following packages:
create-cloudflare@2.11.0
Ok to proceed? (y)

こちらの質問もそのまま Enter を押します

Need to install the following packages:
create-vue@3.9.2
Ok to proceed? (y)

以降の質問は適当に答えてください

Vue.js - The Progressive JavaScript Framework

✔ Add TypeScript? … No / Yes
✔ Add JSX Support? … No / Yes
✔ Add Vue Router for Single Page Application development? … No / Yes
✔ Add Pinia for state management? … No / Yes
✔ Add Vitest for Unit Testing? … No / Yes
✔ Add an End-to-End Testing Solution? › Playwright
✔ Add ESLint for code quality? … No / Yes
✔ Add Prettier for code formatting? … No / Yes

Git の質問は Yes にしてください

├ Do you want to use git for version control?
│ yes git

デプロイするか聞かれるので No を選択します

├ Do you want to deploy your application?
│ no deploy via `npm run pages:deploy`

プロジェクトの作成が完了します

├  APPLICATION CREATED  Deploy your application with npm run pages:deploy
│
│ Navigate to the new directory cd my-vue-app
│ Run the development server npm run pages:dev
│ Deploy your application npm run pages:deploy
│ Read the documentation https://developers.cloudflare.com/pages
│ Stuck? Join us at https://discord.gg/cloudflaredev
│
╰ See you again soon!

起動してみましょう

cd my-vue-app
npm run dev

ローカルホストで Vue のサンプルページが起動しました

スクリーンショット 2024-02-02 17.14.49.png

GitHub 連携

以下のリンクから GitHub に新しいリポジトリーを作成します

Repository name に任意を名前を入力して「Create repository」をクリックしてください

スクリーンショット 2024-02-02 17.03.08.png

空のリポジトリーが作成されます

スクリーンショット 2024-02-02 17.04.33.png

ローカルの Vue プロジェクトを GitHub のリポジトリーにプッシュします

git remote add origin https://github.com/<GitHubユーザー名>/<リポジトリー名>
git branch -M main
git push -u origin main

プッシュ完了後、 GitHub のリポジトリーを再読込すると、 Vue プロジェクトのソースが入っています

スクリーンショット 2024-02-02 17.05.35.png

Cloudflare の Workers & Pages のページから「アプリケーションの作成」をクリックします

スクリーンショット 2024-02-02 17.18.38.png

最初の Web サイトと同じように GitHub のリポジトリーを選択します

「ビルドとデプロイのセットアップ」画面でプロジェクト名を入力し、フレームワークに「Vue」を選択してください

スクリーンショット 2024-02-02 17.21.11.png

デプロイしてしばらくすると、指定したプロジェクト名のドメインに Web サイトが表示されます

スクリーンショット 2024-02-02 17.24.33.png

まとめ

Cloudflare Pages を使うことで、簡単に無料で Web サイトを公開できました

自動デプロイも付いてくるので、その後の運用も非常に楽になります

36
27
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36
27

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?