MENU
  • ホームHOME
  • スマートホームSmart Home
    • スマートリモコン
    • スマートライト
    • スマートロック
    • スマートカメラ
    • スマートセンサー
    • スマートスピーカー
    • IoT家電
    • ロボット掃除機
  • ガジェットGadgets
    • iPhone & iPad
    • アップルウォッチ
    • パソコン関連
    • 充電器/モバイルバッテリー
    • キーボードマウス
    • アプリソフト関連
    • カメラ
    • オーディオその他
  • 生活家電&インテリアAppliances
    • Wi-Fiルーター
    • PCモニター
    • デスク関連
    • モバイル&光回線
    • その他家電
  • ライフLife Style
    • ニュース
    • ライフハック
    • 便利なサービス
    • プログラミング
    • コラム
    • ブログ運営
  • 勉強アプリEducation
    • ビジネス資格
      • ビジネスマネジャー検定
      • MCPC IoT検定 中級対応
      • MCPCモバイルシステム技術
    • DIGI Radio
      (特設サイト)
      • 一陸技アプリ
      • 一陸特アプリ
      • 二陸特アプリ
      • 工事担任者(総合通信)アプリ
    • クラウド系アプリ
      • AWS SAAアプリ
      • AZ-900勉強アプリ
      • AI-900勉強アプリ
    • 宅建学習サイト
  • まとめ記事Summary
  • お問合せContact
    • 勉強アプリ専用フィードバックフォーム
ガジェット&お得なサービス情報をお届けするブログメディア「デジライン」
DIGILINE (デジライン)
  • ホームHOME
  • スマートホームSmart Home
    • スマートリモコン
    • スマートライト
    • スマートロック
    • スマートカメラ
    • スマートセンサー
    • スマートスピーカー
    • IoT家電
    • ロボット掃除機
  • ガジェットGadgets
    • iPhone & iPad
    • アップルウォッチ
    • パソコン関連
    • 充電器/モバイルバッテリー
    • キーボードマウス
    • アプリソフト関連
    • カメラ
    • オーディオその他
  • 生活家電&インテリアAppliances
    • Wi-Fiルーター
    • PCモニター
    • デスク関連
    • モバイル&光回線
    • その他家電
  • ライフLife Style
    • ニュース
    • ライフハック
    • 便利なサービス
    • プログラミング
    • コラム
    • ブログ運営
  • 勉強アプリEducation
    • ビジネス資格
      • ビジネスマネジャー検定
      • MCPC IoT検定 中級対応
      • MCPCモバイルシステム技術
    • DIGI Radio
      (特設サイト)
      • 一陸技アプリ
      • 一陸特アプリ
      • 二陸特アプリ
      • 工事担任者(総合通信)アプリ
    • クラウド系アプリ
      • AWS SAAアプリ
      • AZ-900勉強アプリ
      • AI-900勉強アプリ
    • 宅建学習サイト
  • まとめ記事Summary
  • お問合せContact
    • 勉強アプリ専用フィードバックフォーム
DIGILINE (デジライン)
  • ホームHOME
  • スマートホームSmart Home
    • スマートリモコン
    • スマートライト
    • スマートロック
    • スマートカメラ
    • スマートセンサー
    • スマートスピーカー
    • IoT家電
    • ロボット掃除機
  • ガジェットGadgets
    • iPhone & iPad
    • アップルウォッチ
    • パソコン関連
    • 充電器/モバイルバッテリー
    • キーボードマウス
    • アプリソフト関連
    • カメラ
    • オーディオその他
  • 生活家電&インテリアAppliances
    • Wi-Fiルーター
    • PCモニター
    • デスク関連
    • モバイル&光回線
    • その他家電
  • ライフLife Style
    • ニュース
    • ライフハック
    • 便利なサービス
    • プログラミング
    • コラム
    • ブログ運営
  • 勉強アプリEducation
    • ビジネス資格
      • ビジネスマネジャー検定
      • MCPC IoT検定 中級対応
      • MCPCモバイルシステム技術
    • DIGI Radio
      (特設サイト)
      • 一陸技アプリ
      • 一陸特アプリ
      • 二陸特アプリ
      • 工事担任者(総合通信)アプリ
    • クラウド系アプリ
      • AWS SAAアプリ
      • AZ-900勉強アプリ
      • AI-900勉強アプリ
    • 宅建学習サイト
  • まとめ記事Summary
  • お問合せContact
    • 勉強アプリ専用フィードバックフォーム
  1. ホーム
  2. ライフ
  3. プログラミング
  4. カラフルボックスのサーバを GitHub Actions で自動デプロイする手順まとめ

カラフルボックスのサーバを GitHub Actions で自動デプロイする手順まとめ

2025 11/19
プログラミング

WordPress プラグインやテーマをカラフルボックス上で運用していて、ローカル → GitHub → サーバへのデプロイを手動 SSH + git pullでやっていると、

だんだん面倒になる。この記事では、

GitHub に push → GitHub Actions からカラフルボックスに SSH → サーバ側で git pull 実行

という流れを構築して、push するだけで自動反映される仕組みを作る。

全体像

構成はシンプルに 2 本の SSH ルートだけ:

  1. GitHub Actions → カラフルボックス
    • デプロイ用:GitHub がサーバにログインする用の鍵(秘密鍵は GitHub、公開鍵はカラフルボックス)
  2. カラフルボックス → GitHub
    • git pull 用:サーバが GitHub からソースを引っ張るための鍵(秘密鍵はサーバ、公開鍵は GitHub アカウント)

図にするとこんな感じ:

  • ローカル: 開発 & git push origin main
  • GitHub: push をトリガーに Actions が起動
  • GitHub Actions: SSH でカラフルボックスに接続
  • カラフルボックス: 該当ディレクトリで git pull origin main

前提

  • カラフルボックスに SSH でログインできる(ユーザー名 / ポート番号はわかっている)
  • 対象のコードは GitHub にある 例)taka/xxxxxxx
  • サーバ上には既にクローン済 例)/home/USER/public_html/xxx/wp-content/plugins/xxxxxxx

STEP 1:GitHub Actions → カラフルボックス用の SSH 鍵を作る

まずは「GitHub からサーバに入る用の鍵」を用意する。

1-1. ローカルで秘密鍵ペアを作成

ローカル(Macなど)で実行:

cd ~
ssh-keygen -t ed25519 -C "github-actions-colorfulbox" -f ~/.ssh/github_actions_key
  • パスフレーズは空でOK(Enter 連打)
  • できあがるファイル:
    • ~/.ssh/github_actions_key(秘密鍵)
    • ~/.ssh/github_actions_key.pub(公開鍵)

1-2. 公開鍵をカラフルボックスに登録

  1. カラフルボックスの管理画面にログイン
  2. 「SSHキー管理」的なメニューを開く
  3. ~/.ssh/github_actions_key.pub の中身を開いてコピー:
cat ~/.ssh/github_actions_key.pub
  1. カラフルボックス側のフォームに公開鍵を貼り付けて登録

→ これで「この公開鍵に対応する秘密鍵を持っているクライアントはログイン許可」という状態になる。

1-3. 秘密鍵を GitHub Secrets に登録

今度は逆に、GitHub に秘密鍵を持たせる。

  1. GitHub で対象リポジトリを開く(例:taka/xxxxxxxx)
  2. Settings → Secrets and variables → Actions
  3. New repository secret で以下を登録:
    • SSH_KEY → ~/.ssh/github_actions_key の中身(BEGIN OPENSSH PRIVATE KEY~END まで全部)
cat ~/.ssh/github_actions_key
  1. SSH_HOST → カラフルボックスのホスト(例:183.xx.xx.xxx or ホスト名)
  2. SSH_USER → カラフルボックスの SSH ユーザ名(例:xxxxxxxuser)
  3. SSH_PORT → SSH ポート(例:22)

ここまでで、GitHub Actions → カラフルボックス の準備は完了。

STEP 2:カラフルボックス → GitHub 用の SSH 鍵を作る

次は逆向きのルート。

サーバが GitHub から git pull できなければ意味がない。

2-1. サーバ上で鍵ペア作成

カラフルボックスに SSH ログインして:

ssh USER@HOST -p 22   # ここは自分の環境に合わせる

サーバ側で:

cd ~
ssh-keygen -t ed25519 -C "colorfulbox-xxxxx" -f ~/.ssh/id_ed25519_xxxxxx

chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_ed25519_xxxxxx

2-2. 公開鍵を GitHub アカウントの SSH Key として登録

サーバで公開鍵を表示:

cat ~/.ssh/id_ed25519_xxxxxx.pub

これで出る ssh-ed25519 … の 1 行 丸ごとコピー。

GitHub 側で:

  1. 右上アイコン → Settings
  2. 左メニュー SSH and GPG keys
  3. New SSH key
  4. 入力:
    • Title: id_ed25519_xxxxxx
    • Key: さっきの公開鍵 1 行
  5. Add SSH key で保存

※ ここで間違って 「New GPG key」 を押すとエラーになる。

必ず 「SSH keys」セクションの New SSH key を使う。

2-3. サーバから GitHub に SSH できるかテスト

サーバで:

ssh -i ~/.ssh/id_ed25519_xxxxxx -T git@github.com

初回は fingerprint 確認が出るので yes。

成功していれば:

Hi taka! You've successfully authenticated, but GitHub does not provide shell access.

が出る。

これが出ない(Permission denied)なら、公開鍵の登録先 or コピーミスを疑え。

2-4. ~/.ssh/config を整える

サーバの SSH 設定を一度整理しておく:

cat > ~/.ssh/config << 'EOF'
Host github.com
  HostName github.com
  User git
  IdentityFile /home/USER/.ssh/id_ed25519_xxxxxx
  IdentitiesOnly yes
EOF

chmod 600 ~/.ssh/config

※ USER は自分のユーザー名に置換(xxxxxuser など)。

これで普通に:

ssh -T git@github.com

だけでも上のメッセージが出るようになる。

STEP 3:サーバ側のリポジトリを SSH URL に変更

サーバで対象ディレクトリへ移動:

cd /home/USER/public_html/YOUR-WEBSITE.com/wp-content/plugins/YOUR-PLUGIN

HTTPS URL になっている場合は、SSH URL に変更する:

git remote -v
# 例)https://github.com/taka/YOUR-REPO.git

git remote set-url origin git@github.com:taka/YOUR-REPO.git
git remote -v
# origin git@github.com:taka/YOUR-REPO.git (fetch/push)

最後に手動で git pull が通るか確認:

git pull origin main
# 何も聞かれずに成功すればOK

ここが手動で成功しない限り、GitHub Actions からやらせても絶対に失敗する。

STEP 4:GitHub Actions の Workflow を作成

GitHub リポジトリに .github/workflows/deploy.yml(名前は任意)を作成。

例:

name: Deploy to ColorfulBox via git pull

on:
  push:
    branches:
      - main

jobs:
  deploy:
    runs-on: ubuntu-latest

    steps:
      - name: Setup SSH key
        run: |
          mkdir -p ~/.ssh
          echo "${{ secrets.SSH_KEY }}" > ~/.ssh/id_ed25519
          chmod 600 ~/.ssh/id_ed25519
          ssh-keyscan -p ${{ secrets.SSH_PORT }} ${{ secrets.SSH_HOST }} >> ~/.ssh/known_hosts

      - name: Deploy on server
        run: |
          ssh -p ${{ secrets.SSH_PORT }} ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} << 'EOF'
            cd /home/USER/public_html/YOUR-WEBSITE.com/wp-content/plugins/YOUR-PLUGIN
            git pull origin main
          EOF

ポイント

  • Setup SSH key ステップ
    • SSH_KEY Secret の中身(秘密鍵)を ~/.ssh/id_ed25519 として保存
    • ssh-keyscan で known_hosts を埋めておき、初回接続の確認を潰す
  • Deploy on server ステップ
    • Secrets の SSH_USER / SSH_HOST / SSH_PORT を使ってサーバに SSH
    • その中で git pull origin main を実行

USER 部分だけ自分のサーバユーザー名に置き換えれば、そのまま動く構成。

STEP 5:動作確認

  1. ローカルで README などを 1 行変更
  2. main へ push
  3. GitHub の Actions タブで Deploy to ColorfulBox via git pull が走っていることを確認
  4. 成功後、サーバで:
cd /home/USER/public_html/YOUR-WEBSITE.com/wp-content/plugins/YOUR-PLUGIN
git log -1
  1. して、最新コミットが反映されているか確認 or WordPress 側の動作をブラウザで確認

よくハマるポイントと対策

❌ 公開鍵/秘密鍵を逆に入れる

  • GitHub Secret SSH_KEY に入れるのは秘密鍵
  • GitHub の SSH and GPG keys に登録するのは公開鍵

ここを逆にすると、一生 Permission denied。

❌ GPG key に SSH 公開鍵を入れる

New GPG key に ssh-ed25519 … を貼ると:

We got an error adding your GPG key. Please verify the input is a valid GPG key.

と怒られる。

必ず New SSH key の方に入れる。

❌  ~/.ssh/config に Host github.com を二重定義

SSH は「最初にマッチした Host 定義しか見ない」。

Host github.com が 2 つあると、上側だけ使われる。

意図しない鍵(別プロジェクト用の id_rsa)を掴んで Permission denied になりがち。

1 ブロックだけに整理する。

まとめ

この構成を一度作ってしまえば:

  • ローカル:いつものように git push origin main
  • GitHub Actions:自動で SSH → サーバで git pull
  • サーバ:WordPress プラグイン/テーマが自動更新

という形になる。

カラフルボックス + GitHub で WordPress プロジェクトを回しているなら、

「手で SSH → git pull」やってるのはもう時間の無駄なので、

さっさとこの構成に寄せた方がいいですね。

プログラミング

この記事が気に入ったら
いいね または フォローしてね!

Follow @digiline_ Follow Me
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Takaのアバター Taka

AI業務自動化エンジニア / IoTコンサルタント / ガジェットブロガー

AIとIoTの技術を組み合わせ、スマートホーム構築・業務自動化・ガジェット活用を中心に情報発信と技術支援を行っています。
最新デバイスの検証やレビューだけでなく、実際に生活に組み込み、効率的でストレスのない暮らしを実現するための具体的なノウハウを提供しています。

自宅を“テックハブ”として運用しながら、AIエージェント、IoTデバイス、クラウドサービスを連携させた実験的な取り組みも継続中。
技術の進化を生活に落とし込み、「明日から使えるスマートな暮らし」を読者のみなさんと一緒に作っていくことを目指しています。

関連記事

  • TS-464メモリ増設:メモリ16GBでUIは爆速、読み込み速度はそのまま
    2025年11月1日
  • 【レビュー】QNAP TS-464|パワフルNASだからパソコン&スマホのバックアップ先はこれ1つで十分
    2025年11月1日
  • 【2025年10月版 最新価格】Amazon スマイルSALEでおすすめのガジェット&セール製品|お得に買える攻略方法も紹介。
    2025年10月26日
  • GPT‑4.1 mini と GPT‑5 mini/nano のコスト・性能比較
    2025年10月25日
  • クリックが効かないMX Master 3sを自分で直してみた【スイッチ交換記録】
    2025年10月21日
  • Hue Bridge Pro徹底レビュー|照明が動きを感じる「MotionAware™」の実力とは?
    2025年10月20日
  • 破損してからじゃ遅い!思い出の写真データはしっかりバックアップ&RAIDを組もう
    2025年10月14日
  • SwitchBot温湿度パネル vs Hub 3 徹底比較レビュー|違いと住み分け
    2025年10月4日

コメント

コメントする コメントをキャンセル

人気記事
  • IKEA TRADRI(トロードフリ)のリモコン/センサーが反応しない!?電球がペアリングできないときの復旧方法
    ライフハック
  • iPhoneの電池の減りが異常に早いのでバッテリー交換しに行ったら断れた話。AppleCare+未加入の人は注意しよう!
    便利なサービス
  • セゾンカードの携行品保険ならスマホもパソコンも保証!月300円のスマホ補償付きお買い物安心プラン[Y]がコスパ最強!
    保険のこと
  • iPhoneのフィールドテストモード。隠しコマンドを入れたらこうなるなんて!?【専門家が解説】
    ライフハック
  • Apple Watch (アップルウォッチ)向けの保険としてapplecare+はいらないよ
    保険のこと
新着記事
  • カラフルボックスのサーバを GitHub Actions で自動デプロイする手順まとめ
    2025年11月19日
  • TS-464メモリ増設:メモリ16GBでUIは爆速、読み込み速度はそのまま
    2025年10月31日
  • GPT‑4.1 mini と GPT‑5 mini/nano のコスト・性能比較
    2025年10月25日
  • クリックが効かないMX Master 3sを自分で直してみた【スイッチ交換記録】
    2025年10月20日
  • Hue Bridge Pro徹底レビュー|照明が動きを感じる「MotionAware™」の実力とは?
    2025年10月7日
目次
DIGILINEオススメのサービス
TAKA
メディア監修
AI業務自動化エンジニア / IoTコンサルタント / ガジェットブロガー

AIとIoTの技術を組み合わせ、スマートホーム構築・業務自動化・ガジェット活用を中心に情報発信と技術支援を行っています。
最新デバイスの検証やレビューだけでなく、実際に生活に組み込み、効率的でストレスのない暮らしを実現するための具体的なノウハウを提供しています。

自宅を“テックハブ”として運用しながら、AIエージェント、IoTデバイス、クラウドサービスを連携させた実験的な取り組みも継続中。
技術の進化を生活に落とし込み、「明日から使えるスマートな暮らし」を読者のみなさんと一緒に作っていくことを目指しています。
新着記事
  • カラフルボックスのサーバを GitHub Actions で自動デプロイする手順まとめ
  • TS-464メモリ増設:メモリ16GBでUIは爆速、読み込み速度はそのまま
  • GPT‑4.1 mini と GPT‑5 mini/nano のコスト・性能比較
  • クリックが効かないMX Master 3sを自分で直してみた【スイッチ交換記録】
記事を探す
メーカーで探す
Aiseesoft Amazon Anker Aqara BenQ(ベンキュー) Bose braun Broadlink CANDY HOUSE(キャンディハウス) Coomooy DELL DJI EaseUS FlexiSpot(フレキシースポット) Garmin(ガーミン) GenHigh Google IKEA Insta360 issin j5create LinkJapan Logicool LoopEarplugs MiniTool MOFT(モフト) MUJI Narwal Nature Philips PITAKA(ピタカ) Qrio(キュリオ) Quntis Satechi(サテチ) SwitchBot(スイッチボット) tile TP-Link(ティーピーリンク) Tranya UGREEN Ulanzi Ulike VOLTME Zenosyne お得情報 まとめ
  • DIGI LINE(デジライン)について
  • お仕事の依頼
  • 特定商取引法に関する表記
  • 免責事項/プライバシーポリシー
  • お問合せ

© DIGILINE (デジライン)

目次