Skip to main content

此版本的 GitHub Enterprise 已停止服务 2022-10-12. 即使针对重大安全问题,也不会发布补丁。 为了获得更好的性能、更高的安全性和新功能,请升级到最新版本的 GitHub Enterprise。 如需升级帮助,请联系 GitHub Enterprise 支持

Backing up and restoring GitHub Enterprise Server with GitHub Actions enabled

To restore a backup of your GitHub Enterprise Server instance when GitHub Actions is enabled, you must configure GitHub Actions before restoring the backup with GitHub Enterprise Server Backup Utilities.

About backups of GitHub Enterprise Server when using GitHub Actions

You can use GitHub Enterprise Server Backup Utilities to back up and restore the data and configuration for your GitHub Enterprise Server instance to a new instance. For more information, see "Configuring backups on your appliance."

However, not all the data for GitHub Actions is included in these backups. GitHub Actions 使用外部存储来存储工作流程工件和日志。 此数据存储在您的外部提供商上,例如 Azure blob 存储、Amazon S3 或 MinIO。 � 此,GitHub Enterprise Server 备份和 GitHub Enterprise Server 高可用性配置� 法为存储在此外部存储上的数据提供保护,而是依赖于外部存储提供商(如 Azure 或 AWS)提供的数据保护和复制。

Restoring a backup of GitHub Enterprise Server when GitHub Actions is enabled

To restore a backup of your GitHub Enterprise Server instance with GitHub Actions, you must manually configure network settings and external storage on the destination instance before you restore your backup from GitHub Enterprise Server Backup Utilities.

  1. Confirm that the source instance is offline.

  2. Manually configure network settings on the replacement GitHub Enterprise Server instance. Network settings are excluded from the backup snapshot, and are not overwritten by ghe-restore. For more information, see "Configuring network settings."

  3. SSH into the destination instance. For more information, see "Accessing the administrative shell (SSH)."

    Shell
    $ ssh -p 122 admin@HOSTNAME
  4. Configure the destination instance to use the same external storage service for GitHub Actions as the source instance by entering one of the following commands.

    • Azure Blob Storage:

      Shell
      ghe-config secrets.actions.storage.blob-provider "azure"
    • Amazon S3:

      Shell
      ghe-config secrets.actions.storage.blob-provider "s3"
  5. Configure the external storage connection by entering the following commands, replacing the placeholder values with actual values for your connection.

    • 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"

      Optionally, to force path-style addressing for S3, also enter the following command.

      Shell
      ghe-config secrets.actions.storage.s3.force-path-style true
  6. To prepare to enable GitHub Actions on the destination instance, enter the following command.

    Shell
    ghe-config app.actions.enabled true
  7. To apply the configuration and enable GitHub Actions to connect to your external storage provider, enter the following command.

    Shell
    ghe-config-apply
  8. After GitHub Actions is configured and enabled, to restore the rest of the data from the backup, use the ghe-restore command. For more information, see "Restoring a backup."

  9. Re-register your self-hosted runners on the destination instance. For more information, see "Adding self-hosted runners."