Coolify logoCoolify

GitHub App

GitHub App 允许您授予对单个或多个私有仓库的访问权限,这些仓库可以来自您的个人 GitHub 账户或组织。

为什么在 Coolify 中使用 GitHub App?

受限访问:GitHub App 允许您授予 Coolify 对特定仓库、选定的一组仓库甚至所有仓库的访问权限。这为您提供了灵活性,并更好地控制 Coolify 可以访问的内容。

何时不应在 Coolify 中使用 GitHub App?

权限不足:如果您没有安装 GitHub App 的必要权限,或者您选择不安装它,那么最好不要在 Coolify 中使用它。

安装方法

有两种方法可以在 Coolify 上安装 GitHub App:

  • 自动安装(推荐)
  • 手动安装 我们强烈推荐使用自动安装方法,因为它可以自动化流程并减少出错的可能性。

示例数据

以下数据在本指南中用作示例。请按照步骤操作时将其替换为您的实际数据:

  • Coolify 上的 GitHub App 名称: Github App Tutorial
  • GitHub 上的 GitHub App 名称: coolify-github-app-tutorial
  • Webhook 端点: https://coolboxy.shadowarcanist.internal

自动安装

1. 在 Coolify 上创建 GitHub App

  1. 在您的 Coolify 仪表板中,单击侧边栏中的 Sources(源)。
  2. 单击 + Add(添加)按钮以创建新的 GitHub App。
  1. 输入您的 App 名称
  2. 输入您的 GitHub 组织名称(如果您是将 GitHub App 添加到您的 GitHub 账户,则留空此字段),然后单击 Continue(继续)
  1. 如果您使用的是 GitHub 的 Self-hosted 或 Enterprise 版本,您可以在 Self-hosted/Enterprise GitHub 部分输入您的 GitHub 详细信息。
  2. "System wide"(全局)选项允许您在 Coolify 实例上的所有团队使用此特定的 GitHub App,如果您只想让当前团队使用 GitHub App,请取消选中此选项。

Coolify Cloud 用户将看不到 "System wide"(全局)选项,因为此选项会将您的 GitHub App 启用给所有 Cloud 用户,因此该选项在 Coolify Cloud 上被禁用。

2. 设置 Webhook 端点

  1. 选择 GitHub 在发生事件(提交、PR)时发送 Webhook 的端点。如果此端点不可达,则自动部署将无法工作,因此如果您决定在服务器上关闭 8000 端口,则必须将 Webhook 端点设置为您的 Coolify 仪表板域名。
  1. 预览部署默认启用,如果您不需要,可以禁用它们。
  2. 单击 Register now(立即注册)按钮(这将带您到 GitHub)

3. 在 GitHub 上创建 GitHub App

  1. 为您的 GitHub App 命名(这将显示在您的 GitHub App 列表中,您以后可以随时更改它)
  2. 单击 Create app(创建应用)按钮(这将带您回到您的 Coolify 仪表板)

4. 允许 GitHub App 访问仓库

  1. 单击 "Install repositories on Github"(在 GitHub 上安装仓库)按钮
  1. 选择您希望此应用有权访问的仓库(您可以授予对所有仓库或特定仓库的访问权限)
  2. 单击 "Install"(安装)按钮(这将带您回到您的 Coolify 仪表板)

5. 在 Coolify 上创建新资源

  1. 从 Coolify 仪表板中选择您的项目。
  2. 单击 + New(新建)按钮以创建新资源。

6. 选择私有仓库(带 GitHub App)作为资源类型

从可用的资源类型中选择 Private Repository (with Github App)(私有仓库(带 GitHub App))。

6. 选择您的服务器

注意!

如果您没有连接任何远程服务器,Coolify 会自动选择 localhost 服务器。在这种情况下,请跳过下一步。

选择您要部署应用程序的服务器。

7. 选择您的 GitHub App

从可用应用列表中,选择您在 Coolify 中创建的 GitHub App。

8. 配置应用程序并部署

  1. 选择仓库并单击 "Load Repository"(加载仓库)按钮。
  1. 选择仓库后,配置 buildpack、端口和其他设置。(有关更多详细信息,请参阅我们关于 builds 的专用指南。)

配置完成后,部署您的应用程序。

就是这样!


注意!

自动安装指南到此结束。如果您已按照上述步骤操作,现在可以开始使用 GitHub App 了。以下指南适用于希望手动安装和设置 GitHub App 的人。

手动安装

1. 在 Coolify 上创建 GitHub App

  1. 在您的 Coolify 仪表板中,单击侧边栏中的 Sources(源)。
  2. 单击 + Add(添加)按钮以创建新的 GitHub App。
  1. 输入您的 App 名称
  2. 输入您的 GitHub 组织名称(如果您是将 GitHub App 添加到您的 GitHub 账户,则留空此字段),然后单击 Continue(继续)
  1. 如果您使用的是 GitHub 的 Self-hosted 或 Enterprise 版本,您可以在 Self-hosted/Enterprise GitHub 部分输入您的 GitHub 详细信息。
  2. "System wide"(全局)选项允许您在 Coolify 实例上的所有团队使用此特定的 GitHub App,如果您只想让当前团队使用 GitHub App,请取消选中此选项。

Coolify Cloud 用户将看不到 "System wide"(全局)选项,因为此选项会将您的 GitHub App 启用给所有 Cloud 用户,因此该选项在 Coolify Cloud 上被禁用。

  1. 单击 Continue(继续)按钮
  1. 将 GitHub App 的 Source ID(源 ID)保存在安全的地方(Source ID 是您在 URL 栏中 /github/ 之后看到的 UUID)

我们需要以下数据来设置 GitHub App:

  • App ID(应用 ID)
  • Installation ID(安装 ID)
  • Client ID(客户端 ID)
  • Client Secret(客户端密钥)
  • Webhook Secret(Webhook 密钥)
  • SSH Key(SSH 密钥)

我们将在接下来的几个步骤中获取这些数据。

2. 在 GitHub 上创建应用

为个人账户和组织创建 GitHub 应用略有不同,因此请从下面的部分中选择正确的选项。

  1. 转到您的 GitHub 账户设置
  2. 在侧边栏中向下滚动,直到看到 "developer settings"(开发者设置)并单击它
  1. 单击 "New github app"(新建 GitHub App)按钮
  1. 转到您的 GitHub 组织设置
  2. 在侧边栏中向下滚动,直到看到 "developer settings"(开发者设置)并单击它
  3. 单击 "Github Apps"(GitHub App)
  4. 单击 "New github app"(新建 GitHub App)按钮

3. 在 GitHub 上设置 GitHub App

  1. 为您的应用命名
  2. 输入您的应用的主页 URL(可以是任何内容)
  1. 向下滚动,直到看到 "Post Installation"(安装后)部分

  2. 输入 Setup URL(安装 URL):https://coolboxy.shadowarcanist.internal/webhooks/source/github/install?source=a8000cg0g0ogcc0ggkk8ow4k

  3. 启用 Redirect on Update(更新时重定向)选项

  4. 输入 Webhook URL(Webhook URL):https://coolboxy.shadowarcanist.internal/webhooks/source/github/events

您必须将 https://coolboxy.shadowarcanist.internal 替换为您的 Coolify 仪表板 URL,并将 a8000cg0g0ogcc0ggkk8ow4k 替换为 Source ID 第 1 步

  1. 输入 Webhook Secret(Webhook 密钥)(这必须是一个随机字符串,您可以使用 Random String Generator 等工具)
  2. 启用 Enable SSL verification(启用 SSL 验证)选项
  1. 向下滚动,直到看到 "Permissions"(权限)部分
  2. Contents(内容)的访问权限设置为 Read-only(只读)
  3. Pull Requests(拉取请求)的访问权限设置为 Read and write(读写)(仅当您计划使用预览部署功能时才需要)
  4. Email addresses(电子邮件地址)的访问权限设置为 Read-only(只读)

注意!

在上图中,权限部分隐藏了许多权限,仅显示了设置 Coolify GitHub App 所需的权限。

  1. 向下滚动,直到看到 "Subscribe to events"(订阅事件)部分
  2. 启用 Push(推送)选项
  3. 启用 Pull requests(拉取请求)选项(仅当您计划使用预览部署功能时才需要)
  4. 选择 Only on this account(仅在此账户上)选项(防止其他人将我们的 GitHub App 安装到他们的 GitHub 账户)
  5. 单击 "Create Github App"(创建 GitHub App)按钮
  1. App ID(应用 ID)和 Client ID(客户端 ID)保存在安全的地方(我们稍后需要在 Coolify 中输入这些数据)
  1. 单击 Generate a new client secret(生成新的客户端密钥)按钮
  2. client secret(客户端密钥)保存在安全的地方(我们稍后需要在 Coolify 中输入此数据)
  1. 向下滚动,直到看到 "Private keys"(私钥)部分
  2. 单击 Generate a private key(生成私钥)按钮(这将自动将私钥作为 .pem 文件下载)
  1. 从侧边栏单击 "Install App"(安装应用)
  2. 单击 "Install"(安装)按钮
  1. 选择您希望应用有权访问的仓库。
  2. 单击 "Install"(安装)按钮
  1. 单击设置图标(这将带您到您的账户或组织应用程序页面)
  1. Installation ID(安装 ID)保存在安全的地方(安装 ID 是您在 URL 栏中 /installations/ 之后看到的数字)

4. 在 Coolify 上添加私钥

  1. 在您的 Coolify 仪表板中,单击侧边栏中的 Keys & Tokens(密钥和令牌)。
  2. 单击 Private keys(私钥)选项卡。
  3. 单击 + Add(添加)按钮以添加新的私钥。
  1. 为您的私钥命名
  2. 粘贴您在 GitHub 上设置 GitHub App 时 GitHub 自动下载到您机器上的 .pem 文件的内容
  3. 单击 "Continue"(继续)按钮
  1. 在您的 Coolify 仪表板中,单击侧边栏中的 Sources(源),然后从列表中选择您的 GitHub App
  2. 输入您在之前步骤中保存的详细信息(App ID、Installation ID 等)
  3. 在 "Private key"(私钥)中,选择您刚刚添加到 Coolify 的密钥
  4. 单击 "Sync Name"(同步名称)按钮,如果您看到成功消息,则说明您已完成所有操作,可以开始使用 GitHub App 了!

5. 在 Coolify 上创建新资源

  1. 从 Coolify 仪表板中选择您的项目。
  2. 单击 + New(新建)按钮以创建新资源。

6. 选择私有仓库(带 GitHub App)作为资源类型

从可用的资源类型中选择 Private Repository (with Github App)(私有仓库(带 GitHub App))。

6. 选择您的服务器

注意!

如果您没有连接任何远程服务器,Coolify 会自动选择 localhost 服务器。在这种情况下,请跳过下一步。

选择您要部署应用程序的服务器。

7. 选择您的 GitHub App

从可用应用列表中,选择您在 Coolify 中创建的 GitHub App。

8. 配置应用程序并部署

  1. 选择仓库并单击 "Load Repository"(加载仓库)按钮。
  1. 选择仓库后,配置 buildpack、端口和其他设置。(有关更多详细信息,请参阅我们关于 builds 的专用指南。)

配置完成后,部署您的应用程序。

就是这样!

On this page