Update Coolify
Updating Coolify changes the self-hosted Coolify control plane. It does not update the applications, databases, services, or servers you manage with Coolify.
If you use Coolify Cloud, the Coolify team manages instance updates. You must wait for the Coolify team to update the instance.
For a self-hosted instance, open Settings in the left sidebar, select Updates.
Before you update
- Create an instance backup.
- Review the release notes for the version you plan to install.
- Check for active deployments; they can fail during the update process.
Read the Reverb migration guide before you update if you use custom Compose overrides, realtime ports, firewall rules, or Cloudflare Tunnels.
Back up before an update
In Settings > Backup, configure the instance backup, then leave Backup before update > Database backup set to Enabled. This option is enabled by default. Once an instance backup is configured, Coolify runs it before dashboard-triggered and automatic updates, in addition to its normal schedule.
Coolify waits for the backup to finish. If the database backup fails, the update does not start. Review the failed execution in Settings > Backup, fix the problem, and retry the update. An S3 upload warning can leave a successful local backup; check which copies are available.
The option does not create a backup configuration for you. Without a configured instance backup, the update proceeds without this backup step. Running upgrade.sh directly also requires you to create a backup yourself. Keep the instance APP_KEY separately so you can restore encrypted data.
Choose an update channel
In Settings > Updates, Channel sets the versions this instance upgrades to. Select a channel, then click Save changes.
| Channel | Installs | Image tags |
|---|---|---|
| Stable | Stable releases. This is the default. | 4.7.2, moving latest |
| Preview | Betas and release candidates, then the stable release. | 4.6.0-beta.1, moving preview |
| Nightly | A build of the next version, two times each day. Nightly builds get less testing. | 4.6.0-alpha.0.20261026.1, moving nightly |
| Custom image | The image tag that you enter in Image tag, such as pr-1234 for the build of pull request 1234. | ghcr.io/coollabsio/coolify:pr-<number> |
An instance installs the newest version of its channel and of the more stable channels. For example, the Preview channel also installs stable releases.
On the Stable channel, the page shows a Try the next version early hint about the Nightly channel.
Breaking changes are possible in nightly builds, including database changes that a stable release does not expect. Back up first, and use Nightly only on an instance that you can rebuild.
When you switch to a more stable channel, the instance keeps the updates of the old channel until the stable release of the installed version is out. For example, an instance on a nightly build of 4.6.0 that switches to Stable gets the nightly builds of 4.6.0 until 4.6.0 is released.
Custom image pulls the tag from ghcr.io/coollabsio/coolify. Coolify installs it only when you click Upgrade now on the update page. Automatic updates pause until you select a channel again. Pull request builds are untested and can include database changes that a later release does not expect.
To switch the channel from the command line, run this command on the Coolify server. It accepts stable, preview, or nightly:
docker exec coolify php artisan app:update-channel nightlyChoose an update path
Automatic updates
Enable Automatic updates and set Update frequency. Coolify then checks for a new release and installs it automatically when one is available.
Enable automatic updates

Choose Enabled under Automatic updates. This option saves immediately, and Update frequency becomes available.
If automatic updates cannot be configured in the dashboard, AUTOUPDATE is set in /data/coolify/source/.env. Configure automatic updates in that file instead.
Update frequency

Update frequency sets how often Coolify checks for a new release and installs it if one is available. Enter a cron expression or a preset such as every_minute, hourly, daily, weekly, monthly, or yearly, then click Save changes. The default is 0 0 * * *, which runs daily at midnight in the instance timezone.
During an update, Coolify restarts to apply the new version. The dashboard is unavailable briefly, usually for less than a minute.
Update frequency is unavailable when AUTOUPDATE is set in /data/coolify/source/.env.
Check frequency

Check frequency sets how often Coolify checks the versions file on the CDN and updates the available-version status. Coolify installs an update only when a new version is available. Enter a cron expression or a preset such as every_minute, hourly, daily, weekly, monthly, or yearly, then click Save changes. The default is 0 * * * *, which runs hourly.
Click Check now to check for a new version immediately. This does not install the update.
Update notifications
Coolify sends a notification to the root team when an automatic update starts, fails, or finishes. It uses the enabled notification channels of the root team, except email. If the new version does not start within 30 minutes, Coolify reports the update as failed.
Verify the update
After an update, confirm that the dashboard is reachable, the expected Coolify version is shown, and your resources are running.
If the dashboard does not return, review the update logs on the Coolify server. Coolify writes update logs under /data/coolify/source/ with names such as upgrade-2026-07-11-12-00-00.log.
Instance Environment Variables
Configure PHP memory, workers, scheduled job dispatch, SSH host key checks, and API limits for a self-hosted Coolify instance and apply environment changes.
Migrate realtime services to Reverb
Prepare a self-hosted Coolify instance for the migration from the separate Soketi container to Laravel Reverb in the Coolify container.
