PHP: SSHキーの設定

このドキュメントはGitHub Actionsでデプロイするガイドの一部です。完全なガイドはこちらからご覧いただけます:GitHub Actionsを使ってPHPコードをデプロイする方法

👋 Stackheroドキュメントへようこそ!

Stackheroは、高速かつ信頼性の高いデプロイを実現する PHPクラウド プラットフォームを提供しています:

  • シンプルな git push だけで、PHPアプリケーションを数秒で本番環境にデプロイできます。
  • ご自身のドメインを利用可能で、自動HTTPS証明書が設定されます。手動での作業は一切不要です。
  • 自動バックアップワンクリックアップデート、明確で予測可能な料金体系をご利用いただけます。Stackheroがこれらの運用を担当するため、コード開発に集中できます。
  • アプリケーション専用に構築されたプライベートかつ専用インフラ上で、高いパフォーマンスセキュリティを実現します。

ワークフローを効率化し、時間を節約しましょう。 Stackheroの PHPクラウドホスティング の導入は数分で完了します。

SSHキーは、GitHub Actionsがデプロイ時にPHPサービスへ安全に接続するための推奨認証方法です。本ガイドでは、この用途専用のSSHキーペアを新規作成します。

新しいSSHキーを生成するには、以下のコマンドをお使いのPCで実行してください:

ssh-keygen -C "" -f /tmp/ssh_key -N ""

次に、公開鍵を取得するには以下を実行します:

cat /tmp/ssh_key.pub

Stackheroダッシュボードで「Production」PHPサービスを選択し、「Configure」をクリックして、以下の手順に従ってください:

  1. SSH public keysの下で「Add a public key」をクリックします。
  2. Descriptionに「GitHub Action」と入力します。
  3. 先ほど取得した公開鍵をKey欄に貼り付けます。

サービス設定の取得サービス設定の取得

次に、デプロイ時に利用できるよう、秘密鍵をGitHubプロジェクトに追加します:

  • Settingsに移動し、Environmentsを選択してNew environmentをクリックします。

    GitHub環境の設定GitHub環境の設定

  • Name欄に「production」と入力し、確定します。

    環境の設定環境の設定

  • No restrictionボタンをクリックし、Selected branches and tagsを選択します。

    環境制限の設定環境制限の設定

  • Add deployment branch or tag ruleをクリックし、Name pattern欄に「production」と入力してAdd ruleをクリックします。

    環境ブランチの設定環境ブランチの設定 環境ブランチの設定環境ブランチの設定

  • Environment secretsセクションでAdd secretをクリックします。

    シークレットの追加シークレットの追加

先ほど生成した秘密鍵を取得するには、以下を実行します:

cat /tmp/ssh_key

GitHub環境設定画面で:

  • NameSTACKHERO_SSH_PRIVATE_KEYと入力し、Value欄に秘密鍵を貼り付けます。

    SSH秘密鍵シークレットの設定SSH秘密鍵シークレットの設定

  • Environment variablesセクションでAdd variableをクリックします。

    変数の設定変数の設定

  • NameSTACKHERO_ENDPOINTと入力し、Value欄にPHPサービスのエンドポイントを貼り付けます。エンドポイントはStackheroダッシュボードで確認できます。

    エンドポイント変数の設定エンドポイント変数の設定

サービスのドメイン名をカスタマイズしている場合は、<XXXXXX>.stackhero-network.comの代わりにカスタマイズしたドメインを使用してください。

セキュリティ上の理由から、セットアップ後はPC上のSSH鍵を削除しておくことを推奨します:

rm /tmp/ssh_key /tmp/ssh_key.pub