0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

自分のポータルサイトを題材にGithub Pagesを作成した話

0
Last updated at Posted at 2026-02-01

はじめに

どうも、最近WEB技術に興味が旺盛な猫背なエンジニアです。

本日は新幹線の中から記事を投稿しています。作業がしずらい(笑)
今回はGitHub Pagesを用いてWebサイトの公開練習をしたので記録します。

GitHub Pages?

■ 概要
GitHubが提供している静的Webサイト専用のホスティングサービスで、
HTML/CSS/JavaScriptでHPを作ることができます。
また、サーバー契約・設定は不要、もちろんサーバ代無料で公開までできる優れものです。

GitHub Pagesは基本的にポートフォリオサイト、技術ブログ、ランディングページなど、
「静的に表示できる Web ページ」全般ができます。
また、GitHub公式が認めてない行為はだめだが、商用利用も一部可能という記事も見たことがあるので、
本格的なサイト作成の練習にもできる。

■ 制約について
GitHub PagesのURLルールとして、https:/ユーザー名.github.io/「github.io」という形の制約があります。
また、GitHub Pagesは静的サイト専用なので、PHP/Python/Node.js, データベース接続, サーバー側での処理。
ただし、JavaScriptでの動的表示、API(外部サービス)との通信は可能です。

NECOZEのGitHub Pages

⬛︎ ホームページの構成

リポジトリの基本ファイル構成例
📦 n-necoze.github.io
├─ .github/
│   └─ workflows/
│       └─ deploy.yml
├─ index.html
├─ style.css
├─ assets/
│   ├─ images/
│   └─ icons/
└─ README.md

■ 主要ファイル
〇 index.html
トップページ本体。ヘッダー+コンテンツ+フッターなどを記述。
〇 style.css
全体のデザイン用 CSS。
〇 assets/
画像・アイコン・外部スクリプトなどの静的アセット。

※ ファイル名や構成はプロジェクトによって自由ですが、index.htmlがルートにあることがGitHub Pagesでは重要 (エントリポイントとして使われるためらしい)。

⬛︎ GitHub Actionsでの自動デプロイ
GitHub Pagesは静的ファイル公開だけなら手動Pushでも十分です。
ですが、以下のメリットがあるためActionsで自動化しています:
〇 リポジトリに Push するだけでページが更新される
〇 ビルドが必要な静的サイトジェネレーターにも対応可能
〇 更新時の手間・ミスを減らせる

GitHub ActionsによるPages自動デプロイは YAML1つで実現できます。

⬛︎ GitHub Actions の仕組み
GitHub Actions は CI/CD ツールで、特定イベント時に workflows(ワークフロー)を自動実行します。
たとえば main ブランチに Push されたら自動でデプロイする、という流れです。

GitHub Pagesのデプロイワークフローには次の流れが一般的です:
1. Push をトリガーに起動
2. リポジトリをチェックアウト
3. (必要なら)静的サイトをビルド
4. 出力ファイルを Pages にデプロイ

この一連の動作を YAML ファイルに書きます。

⬛︎ 実際の workflow 例
以下は、静的ファイルを GitHub Pages に自動デプロイする最小の例です

.github/workflows/deploy.yml

name: Deploy NECOZE PORTAL

on:
  push:
    branches:
      - main

jobs:
  deploy:
    runs-on: ubuntu-latest

    steps:
      # リポジトリの内容を取得
      - uses: actions/checkout@v4

      # (必要なら) ビルド処理をここに追加

      # デプロイ処理
      - name: Upload Pages Artifacts
        uses: actions/upload-pages-artifact@v1
        with:
          path: './'

      - name: Deploy to GitHub Pages
        uses: actions/deploy-pages@v1

〇 actions/checkout@v4
→ リポジトリのコードを取得します。
〇 actions/upload-pages-artifact@v1
→ デプロイ対象となる静的ファイルを一旦アーティファクトとして準備。
〇 actions/deploy-pages@v1
→ GitHub Pages にアップロードします。

⬛︎ 更新の流れ
1. 変更したファイルをコミット
2. main ブランチにプッシュ
3. GitHub Actions が自動実行
4. 成功すると GitHub Pages に反映

Deploy の進行状況やログは Actionsタブから確認できます。

おわりに

〇 手動操作不要でデプロイが完結
〇 CI/CD スタイルで安全・確実
〇 Github 上のファイル更新だけで Web サイト公開

今回作成したものを以下に添付いたします。今後も更新していきたいと思います!

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?