ステージング インスタンスについて
GitHub では、your GitHub Enterprise Server instanceの構成のバックアップ、更新、または変更をテストするために個別の環境を設定することを推奨しています。 運用システ� から分離する必要があるこの環境は、ステージング環境と呼ばれます。
たとえば、データの損失から保護するために、運用インスタンスのバックアップを定期的に検証できます。 ステージング環境の別の GitHub Enterprise Server インスタンスに、運用データのバックアップを定期的に復元できます。 このステージング インスタンスでは、GitHub Enterprise Server の最新の機能リリースへのアップグレードをテストすることもできます。
ヒント: ステージング インスタンスを本番容量で使用しない限り、既存の GitHub Enterprise ライセンス ファイルを再利用できます。
ステージング環境に関する考慮事� �
GitHub Enterprise Server を十分にテストし、運用環境とできる� け似た環境を再作成するには、インスタンスと対話する外部システ� を検討してく� さい。 たとえば、ステージング環境では次をテストできます。
- 認証 (特に SAML などの外部認証プロバイダーを使用する� �合)
- 外部のチケットシステ� との統合
- 継続的インテグレーションサーバとの統合
- GitHub Enterprise Server APIs を利用する外部のスクリプトあるいはソフトウェア
- メール通知のための外部のSMTPサーバ
ステージングインスタンスのセットアップ
ステージング インスタンスを最初からセットアップしたり、必要に応じてインスタンスを設定したりすることができます。 詳しい情� �については、「GitHub Enterprise Server インスタンスをセットアップする」および「Enterprise を設定する」を参照してく� さい。
または、運用インスタンスのバックアップをステージング インスタンスに復元することで、運用構成を反� するステージング インスタンスを作成することもできます。
- 運用インスタンスをバックアップします。
- ステージング インスタンスをセットアップします。
- GitHub Actions を設定します。
- GitHub Packages を設定します。
- 運用バックアップを復元します。
- インスタンスの設定を確認します。
- インスタンスの構成を適用します。
1. 運用インスタンスをバックアップする
運用インスタンスと同じデータと設定を含むインスタンスで変更をテストする� �合は、GitHub Enterprise Server Backup Utilities を使用して運用インスタンスからデータと設定をバックアップします。 詳細については、「アプライアンスでのバックアップの設定」を参照してく� さい。
警告: 運用環境で GitHub Actions または GitHub Packages を使用する� �合、バックアップには外部ストレージの運用設定が含まれます。 ステージング インスタンスから運用ストレージに書き込むことでデータが失われる可能性を回避するには、バックアップを復元する前に、手� � 3 と 4 の各機能を設定する必要があります。
2. ステージング インスタンスをセットアップする
新しいインスタンスをステージング環境として動作するようにセットアップしてく� さい。 ステージングインスタンスのプロビジョニングとインストールについては、本番インスタンスと同じガイドが利用できます。 詳細については、「GitHub Enterprise Server インスタンスをセットアップする」を参照してく� さい。
運用インスタンスのバックアップを復元する� �合は、次の手� �に進みます。 または、インスタンスを手動で設定し、以降の手� �にスキップすることもできます。
3. GitHub Actions を設定する
必要に応じて、運用インスタンスで GitHub Actions を使用する� �合、運用バックアップを復元する前にステージング インスタンスで機能を設定します。 GitHub Actions を使用しない� �合は、「4. GitHub Packages を設定する」にスキップします。
警告: 運用バックアップを復元する前にステージング インスタンスで GitHub Actions を設定しないと、ステージング インスタントで運用インスタンスの外部ストレージが使用され、データが失われる可能性があります。 ステージング インスタンスには別の外部ストレージを使用することを強くお勧めします。 詳細については、「ステージング環境を使用する」を参照してく� さい。
-
SSH into the staging instance. For more information, see "Accessing the administrative shell (SSH)."
Shell $ ssh -p 122 admin@HOSTNAME
-
GitHub Actions の外部ストレージ プロバイダーを使用するようにステージング インスタンスを設定するには、次のコマンドのいずれかを入力します。
-
Azure Blob Storage:
Shell ghe-config secrets.actions.storage.blob-provider "azure"
-
Amazon S3:
Shell ghe-config secrets.actions.storage.blob-provider "s3" ``` 1. 次のコマンドを入力して外部ストレージ接続を構成し、プレースホルダーの値を実際の接続の値に置き換えます。
-
Azure Blob Storage:
Shell ghe-config secrets.actions.storage.azure.connection-string "CONNECTION STRING"
-
Amazon S3:
Shell ghe-config secrets.actions.storage.s3.bucket-name "S3 BUCKET NAME" ghe-config secrets.actions.storage.s3.service-url "S3 SERVICE URL" ghe-config secrets.actions.storage.s3.access-key-id "S3 ACCESS KEY ID" ghe-config secrets.actions.storage.s3.access-secret "S3 ACCESS SECRET"
必要に応じて、S3 のパス スタイルのアドレス指定を強制するには、次のコマンドも入力します。
Shell ghe-config secrets.actions.storage.s3.force-path-style true
-
-
ステージング インスタンスで GitHub Actions を有効にする準備をするには、次のコマンドを入力します。
Shell ghe-config app.actions.enabled true
4. GitHub Packages を設定する
必要に応じて、運用インスタンスで GitHub Packages を使用する� �合、運用バックアップを復元する前にステージング インスタンスで機能を設定します。 GitHub Packages を使用しない� �合は、「5. 運用バックアップを復元する」にスキップします。
警告: 運用バックアップを復元する前にステージング インスタンスで GitHub Packages を設定しないと、ステージング インスタントで運用インスタンスの外部ストレージが使用され、データが失われる可能性があります。 ステージング インスタンスには別の外部ストレージを使用することを強くお勧めします。
-
ステージング インスタンスに復元するバックアップを確認します。
- GitHub Enterprise Server Backup Utilities 3.5 以降を使用してバックアップを作成した� �合、バックアップには、GitHub Packages の設定が含まれます。 次の手� �に進みます。
- GitHub Enterprise Server Backup Utilities 3.4 以前を使用してバックアップを作成した� �合、ステージング インスタンスで GitHub Packages を設定します。 詳しい情� �については、「Enterprise の GitHub Packages の概要」を参照してく� さい。
-
SSH into the staging instance. For more information, see "Accessing the administrative shell (SSH)."
Shell $ ssh -p 122 admin@HOSTNAME
-
次のコマンドを入力して外部ストレージ接続を設定し、プレースホルダーの値を接続の実際の値に置き換えます。
-
Azure Blob Storage:
Shell ghe-config secrets.packages.blob-storage-type "azure" ghe-config secrets.packages.azure-container-name "AZURE CONTAINER NAME" ghe-config secrets.packages.azure-connection-string "CONNECTION STRING"
-
Amazon S3:
Shell ghe-config secrets.packages.blob-storage-type "s3" ghe-config secrets.packages.service-url "S3 SERVICE URL" ghe-config secrets.packages.s3-bucket "S3 BUCKET NAME" ghe-config secrets.packages.aws-access-key "S3 ACCESS KEY ID" ghe-config secrets.packages.aws-secret-key "S3 ACCESS SECRET"
-
-
ステージング インスタンスで GitHub Packages を有効にする準備をするには、次のコマンドを入力します。
Shell ghe-config app.packages.enabled true
5. 運用バックアップを復元する
ghe-restore
コマンドを使用して残りのデータをバックアップから復元します。 詳しくは、「バックアップの復元」を参照してく� さい。
ステージング インスタンスが既に設定されており、設定、証明書、ライセンス データを上書きする� �合は、コマンドに -c
オプションを追� します。 このオプションの詳しい情� �については、GitHub Enterprise Server Backup Utilities ドキュメントの「バックアップおよび復元コマンドの使用」を参照してく� さい。
6. インスタンスの設定を確認する
同じホスト名を使用してステージング インスタンスにアクセスするには、macOS または Linux の /etc/hosts
ファイル、または Windows の C:\Windows\system32\drivers\etc
ファイルを編集して、ステージング インスタンスのホスト名を IP アドレスで解決するようにローカル ホスト ファイルを更新します。
注: ステージング インスタンスには、運用インスタンスと同じホスト名からアクセスできる必要があります。 your GitHub Enterprise Server instanceのホスト名の変更はサポートされていません。 詳しくは、「ホスト名の設定」をご覧く� さい。
次に、[Management Console] でステージング インスタンスの設定を確認します。 詳しい情� �については、「[Management Console] へのアクセス」を参照してく� さい。
警告: ステージング インスタンスの GitHub Actions または GitHub Packages を設定した� �合、運用データが上書きされるのを回避するために、[Management Console] の外部ストレージの設定が運用インスタンスと一致していないことを確認してく� さい。
7. インスタンスの構成を適用する
[Management Console] から設定を適用するには、 [設定の保存] をクリックします。