Integration
This guide will show you how to use GitHub based repositories with Coolify.
Public Repositories
You can use public repositories without any additional setup.
- Select the
Public repository
option in the Coolify when you create a new resource. - Add your repository URL to the input field, for example:
https://github.com/coollabsio/coolify-examples
- That’s it! Coolify will automatically pull the latest version of your repository and deploy it.
Private Repositories
With GitHub App (Recommended)
You can use private repositories with the GitHub App integration. You will get full integration with GitHub, like automatic commit deployments and pull request deployments.
- Create a new GitHub App in the
Sources
view. - Create a new resource and select the
Private Repository (with GitHub App)
. - Choose your repository from the list.
- That’s it!
With Deploy Keys
- Add a private key (aka
Deploy Keys
) to Coolify and to your GitHub repository in theSettings
/Deploy Keys
menu.
- Create a new resource and select the
Private Repository (with deploy key)
- Add your repository URL to the input field, for example:
git@github.com:coollabsio/coolify-examples.git
- That’s it!
Automatic commit deployments with webhooks (Optional)
You can add a custom webhook URL to your GitHub repository to trigger a new deployment when you push to your repository.
In your resource, there is a Webhooks
menu. In the Manual Git Webhooks
section, you can find the URL what you need to set in your GitHub repository.
- Set a secret key in the
GitHub Webhook Secret
input field. - Go to your repository on GitHub and open the
Settings
/Webhooks
menu. - Add the URL from Coolify to the
URL
input field and the secret token. - Select the
Push events
option. - That’s it! Now when you push to your repository, GitHub will send a webhook request to Coolify and it will trigger a new deployment.
Pull request deployments with webhooks (Optional)
You can add a custom webhook URL to your GitHub repository to trigger a new deployment when you create a new merge request.
The process is the same as the previous one, but you need to select the Pull Request
events option in the Settings
/ Webhooks
menu.