Ruby: SSH キーの設定
このドキュメントはGitHub Actions でデプロイするガイドの一部です。完全なガイドはこちらからご覧いただけます:GitHub Actions を使って Ruby コードをデプロイする方法。
👋 Stackhero ドキュメントへようこそ!
Stackhero では、すぐに使える Ruby cloud ソリューションをご提供しています。主な特長は以下の通りです:
- シンプルな
git pushだけで、数秒でアプリケーションをデプロイできます。- 独自ドメイン名をご利用いただけ、HTTPS 証明書の自動設定による高いセキュリティを実現します。
- 自動バックアップ、ワンクリックアップデート、そしてシンプルで透明性のある予測可能な料金体系で安心してご利用いただけます。
- プライベートかつ専用インフラによる最適なパフォーマンスと堅牢なセキュリティを確保しています。
時間を節約し、運用をシンプルに:Stackhero の Ruby cloud hosting ソリューションは、わずか5分でお試しいただけます!
GitHub Actions からコードをデプロイできるようにするには、SSH キーを設定する必要があります。これにより、認可されたアクションのみが Stackhero サービスへ接続でき、デプロイのセキュリティが確保されます。
以下のコマンドで新しい SSH キーペアをローカルで生成します:
ssh-keygen -C "" -f /tmp/ssh_key -N ""
公開鍵の登録
次に、作成した公開鍵を取得します:
cat /tmp/ssh_key.pub
Stackhero ダッシュボードで「production」Ruby サービスを選択し、「Configure」ボタンをクリックします。
サービス設定の取得
その後、
SSH public keysの下でAdd a public keyをクリックします。DescriptionにはGitHub Actionと入力します。Keyには、先ほど取得した公開鍵の内容を貼り付けます。
サービス設定の取得
秘密鍵の登録
次に、GitHub のウェブサイトでプロジェクトを開きます。
Settings > Environments へ進み、New environment をクリックします。
GitHub 環境の設定
環境名を「production」として保存します。
環境の設定
No restriction ボタンをクリックし、Selected branches and tags を選択します。
環境制限の設定
Add deployment branch or tag rule をクリックし、パターンに「production」と入力してルールを追加します。
環境ブランチの設定
環境ブランチの設定
SSH 秘密鍵を安全に保存するため、Environment secrets で Add secret をクリックします。
シークレットの追加
ローカルで秘密鍵を取得します:
cat /tmp/ssh_key
Name には STACKHERO_SSH_PRIVATE_KEY、Value には秘密鍵の内容を貼り付けます。
SSH 秘密鍵シークレットの設定
続いて、Ruby サービスのエンドポイントを環境変数として追加します。Environment variables で Add variable をクリックします。
変数の設定
Name には STACKHERO_ENDPOINT、Value には Stackhero ダッシュボードで確認できる Ruby サービスのエンドポイントを入力します。
エンドポイント変数の設定
サービスにカスタムドメイン名を設定している場合は、<XXXXXX>.stackhero-network.com の代わりにそのカスタムドメインを必ずご利用ください。
生成したキーの削除
Stackhero および GitHub へのキー登録が完了したら、セキュリティのためローカルのキーを削除してください。
rm /tmp/ssh_key /tmp/ssh_key.pub