其他 Git 提供商
本指南将向您展示如何在 Coolify 中使用其他 Git 提供商,例如 Gogs、Forgejo 以及任何其他兼容 Git 的平台。
公共仓库
您可以使用来自任何 Git 提供商的公共仓库,无需进行任何额外设置。
- 在 Coolify 中创建新资源时,选择
公共仓库选项。 - 将您的仓库 URL 添加到输入字段中,例如:
https://git.example.com/username/repository
注意
您只能使用 HTTPS URL。
- 完成!Coolify 将自动拉取您仓库的最新版本并进行部署。
私有仓库
私有仓库需要部署密钥进行身份验证。
使用部署密钥
- 在 Coolify 和 Git 仓库的设置(通常在
设置/部署密钥或SSH 密钥下)中添加一个私钥(即部署密钥)。
注意
- 您可以使用以下命令生成新的密钥对:
ssh-keygen -t ed25519 -C "coolify_deploy_key"- 或者,您也可以使用 Coolify 在
密钥与令牌菜单中为您生成新密钥。
- 创建新资源并选择
私有仓库(使用部署密钥)。 - 将您的仓库 URL 添加到输入字段中,例如:
git@git.example.com:username/repository.git
注意
您需要使用 SSH URL,即以 git@ 开头的那个。
- 完成!Coolify 将自动拉取您仓库的最新版本并进行部署。
自动提交部署(可选)
对于没有直接集成的 Git 提供商,自动部署需要通过部署 Webhook 端点触发部署。
注意
这需要您的 Git 提供商支持工作流自动化或 Webhook 操作(类似于 GitHub Actions)。
如果您的提供商不支持此功能,则需要通过 Coolify 仪表板手动触发部署。
前提条件
- 在您的 Coolify 仪表板中创建 Coolify API 令牌
- 从您的资源获取部署 Webhook URL(您的资源 →
Webhooks菜单 →部署 Webhook)
与工作流/CI 系统设置
如果您的 Git 提供商支持工作流自动化(如 GitHub Actions、GitLab CI、Forgejo Actions 等),您可以自动触发部署:
- 将您的 Coolify API 令牌添加到您的仓库密钥中(例如
COOLIFY_TOKEN) - 将部署 Webhook URL 添加到您的仓库密钥中(例如
COOLIFY_WEBHOOK) - 创建一个在推送事件时触发的工作流文件:
# 示例工作流(语法因提供商而异)
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: 触发 Coolify 部署
run: |
curl --request GET "${{ secrets.COOLIFY_WEBHOOK }}" \
--header "Authorization: Bearer ${{ secrets.COOLIFY_TOKEN }}"- 完成!现在当您推送到仓库时,工作流将触发并向 Coolify 发送请求以启动新部署。
替代方案:直接 Webhook
某些 Git 提供商允许 Webhook 发送自定义头部。如果支持,您可以配置 Webhook 直接将带有 Authorization: Bearer YOUR_TOKEN 头部的 GET 请求发送到部署 Webhook URL,而无需工作流文件。
支持的 Git 提供商
此方法适用于支持标准 Git 协议的任何 Git 提供商,包括:
- Gogs
- Forgejo
- 自托管 GitLab CE/EE 实例
- 自定义 Git 服务器(gitolite 等)
- 任何兼容 Git-over-SSH 的平台
与应用程序集成的比较
| 功能 | 其他提供商 | GitHub、GitLab、Bitbucket、Gitea |
|---|---|---|
| 仓库访问 | ✅ 是 | ✅ 是 |
| 手动部署 | ✅ 是 | ✅ 是 |
| 自动部署 | ⚠️ 需要工作流设置 | ✅ 自动 |
| 拉取请求预览 | ❌ 否 | ✅ 是 |
