Connect source code

Git-based applications need a repository URL, branch, and authentication method that Coolify can use from the deployment path.

The short version

Use HTTPS for a public repository, an SSH deploy key for one private repository, or a GitHub App for scoped repository access with integrated webhooks.


Choose a source method

MethodWhen to use itGuide
Public repositoryThe repository is public and can be cloned over HTTPS without credentials.Connect a public repository
Deploy keyOne private repository needs read-only SSH access.Use a deploy key
GitHub AppGitHub repositories need scoped access, integrated webhooks, and pull-request events.Configure a GitHub App
GitLab AppGitLab repositories need repository browsing, private HTTPS cloning, and merge-request events.Set up a GitLab App
Gitea AppGitea repositories need repository browsing, private HTTPS cloning, and pull-request events.Set up a Gitea App

A GitHub App configures provider webhooks as part of the source. For a GitLab App or a Gitea App, add one webhook with the source's URL and secret in the provider. Public repositories and deploy keys require manual webhooks for automatic deployments and previews.

Repository access and container registries are separate

Git credentials let Coolify clone source code. Registry credentials let Docker pull or push images.

A deploy key cannot authenticate to a private container registry. Read Docker registries when the application uses a private image or pushes a built image.

Choose the next source guide

On this page