Node.js: SSH キーの設定

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

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

Stackhero は、すぐに使える Node.js クラウド 環境を提供し、開発スピードを加速します:

  • シンプルな git push だけで、数秒で本番環境にデプロイ。追加ツールや手動設定は不要です。
  • 独自ドメインを利用でき、自動 HTTPS 証明書により追加設定なしでアプリケーションのセキュリティを確保します。
  • 自動バックアップワンクリックアップデート予測可能な料金体系で、機能開発に集中できるよう Stackhero がインフラ管理を担当します。
  • プライベートかつ専用インフラ上に構築されており、安定したパフォーマンスと高いセキュリティを実現します。

運用負荷を削減し、時間を節約:わずか数分で Stackhero の Node.js クラウドホスティング 上でアプリケーションを稼働させることができます。

SSH キーは、GitHub Actions がデプロイ時に Node.js サービスへ安全に接続するために必要です。このステップは Stackhero サービスのセキュリティ確保に不可欠です。

お使いのコンピュータで、以下のコマンドで新しい SSH キーを生成できます:

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

作成した公開鍵を確認するには、次のコマンドを実行します:

cat /tmp/ssh_key.pub

次に、Stackhero ダッシュボードで本番用 Node.js サービスを選択し、Configure ボタンをクリックします。

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

以下の手順を続けてください:

  1. SSH public keysAdd 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 secretsAdd secret をクリックします。

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

生成した秘密鍵を取得するには、次のコマンドを実行します:

cat /tmp/ssh_key

GitHub では NameSTACKHERO_SSH_PRIVATE_KEY を指定し、Value フィールドに秘密鍵を貼り付けてください。

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

続いて Environment variablesAdd variable をクリックします。

変数の設定変数の設定

NameSTACKHERO_ENDPOINT を入力し、Value フィールドに Node.js サービスのエンドポイントを貼り付けます。エンドポイントは Stackhero ダッシュボードで確認できます。

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

サービスにカスタムドメインを設定している場合は、<XXXXXX>.stackhero-network.com の代わりにご自身のカスタムドメインを使用してください。

セキュリティのため、Stackhero と GitHub への登録が完了したら、コンピュータ上の SSH キーを削除しておくことを推奨します:

rm /tmp/ssh_key /tmp/ssh_key.pub