Skip to content

Latest commit

 

History

History
289 lines (221 loc) · 9.93 KB

File metadata and controls

289 lines (221 loc) · 9.93 KB
title Notifications
description Configure multi-channel notifications in Coolify with Email, Telegram, Discord, Slack, Mattermost, Pushover, Gotify, and Webhooks for deployments, backups, and server monitoring alerts.

Notifications

Coolify provides a robust notification system that supports multiple channels. You can configure notifications in the Notifications tab of your Coolify dashboard.

Notification Providers

Below are guides for setting up supported notification providers in Coolify.

Email

::: info Email notifications can be configured using either SMTP or Resend. :::

  1. Navigate to NotificationsEmail

  2. Choose your email provider:

    • Use system wide (transactional) email settings (if you self-host Coolify, you can set this up in the Instance Settings - If you use Coolify Cloud, this is set up for you).
    • SMTP Server
    • Resend
  3. Configure your chosen provider:

System-Wide Email Settings

  • Enable the Use system wide (transactional) email settings checkbox
  • If you're setting this up yourself, please refer to the SMTP Server Configuration section below for detailed settings.

SMTP Server Configuration

  • Fill in the following fields:
    • From Name - Display name for the sender
    • From Address - Email address notifications will come from
    • Host - SMTP server hostname (e.g., smtp.mail.com)
    • Port - SMTP port:
      • Port 587 - StartTLS port (most widely supported)
      • Port 465 - TLS/SSL port (recommended for highest security)
    • Username - SMTP authentication username
    • Password - SMTP authentication password
    • Encryption - Choose your encryption method:
      • StartTLS - Starts unencrypted then upgrades to TLS via StartTLS (typically used with port 587)
      • TLS/SSL - Uses TLS encryption from the start (typically used with port 465 - automatically puts ssl:// in front of the host)
      • None - No encryption (NOT recommended as it is highly insecure)
    • Timeout - Connection timeout in seconds
  • Enable the SMTP Server via the Enabled checkbox

::: success Tip We recommend using TLS/SSL encryption with port 465 for the most secure connection. This provides encryption from the start of the connection. :::

::: info Some hosting providers have specific port restrictions. For example, Hetzner blocks port 465 by default. Check with your hosting provider about port availability and any required configuration changes. :::

Resend Configuration

  • Enter your Resend API Key
  • Enable the Resend checkbox
  1. Click Send Test Email to verify your setup

Telegram

  1. Initial Setup (Setup only possible on phone)

    • Create a Telegram account using your phone number
    • Open the Telegram app on your phone
    • Go to SettingsProfile
    • Set up a username (recommended)
  2. Create Your Bot

    • Message @BotFather
    • Send the /newbot command
    • Follow BotFather's instructions to create your bot
    • Copy the Bot Token when displayed

::: info After copying your bot token, delete the message containing it from Telegram. Store the token securely as anyone with access to it can control your bot. :::

  1. Create and add your bot to a group

    • Create a new group in Telegram
    • Add your bot to the group (you can add it by using the bot name chosen while creating the bot)
  2. Make the bot an admin of the group

    • Click on the group name
    • Locate the members list
    • Click on the bot name
    • Click on Add to group or channel
    • Choose the group
    • Enable the admin toggle
    • Click on Add bot as admin
  3. Enable Topics (Optional, Setup only possible on phone)

    • Open the group on your phone
    • Tap the group name
    • Tap the pencil icon (edit)
    • Find and enable Topics (this enables threads for the group)
    • You can now create topics using the 3-dot menu in the group (also works on desktop)
  4. Get Required IDs

    • Visit: https://api.telegram.org/bot{YOUR_BOT_TOKEN}/getUpdates (Replace {YOUR_BOT_TOKEN} with your actual bot token)
    • Send a test message in your group or thread/topic
    • Find these values in the response:
      • Chat ID: Look for "chat": {"id": -100XXXXXXXXX, (for groups/channels, the chat ID usually starts with -100)
      • Thread/Topic ID (if using threads): Look for "message_thread_id":XXXXX,
  5. Configure Coolify

    • Go to NotificationsTelegram
    • Enter your bot token (from step 2)
    • Enter the chat ID (include the - minus sign if present)
    • Enter the thread/topic ID (only if you are using threads)
    • Save settings
    • Enable the Telegram channel
    • Send a Test notification

::: info Common issues:

  • Make sure the bot is an admin in the group/channel
  • Include the minus sign (-) in the chat ID if present
  • If getUpdates returns an empty response, send another message and try again
  • if you can not acces getUpdates make sure you have the correct bot token and you have replace the {YOUR_BOT_TOKEN} with your actual bot token (replace everything including the quotes) :::

Discord

  1. Create a Discord Server and Channel

    • Create a new server or use an existing one
    • Create a new text channel for Coolify notifications
  2. Create a webhook

    • Open Discord server settings
    • Go to IntegrationsWebhooks
    • Click New Webhook
    • Choose the channel you created for Coolify notifications
    • Copy the webhook URL
  3. Configure in Coolify:

    • Go to NotificationsDiscord
    • Paste the webhook URL in the Webhook URL field
    • Save the settings
    • Enable the Discord channel
    • Send a Test notification

::: info See Discord's Webhook Guide for more detailed setup instructions. :::

Slack / Mattermost

Using Slack

  1. Create a Slack App

    • Visit Slack API
    • Click Create New AppFrom scratch
    • Choose your workspace
  2. Enable webhooks:

    • Go to Incoming Webhooks
    • Toggle Activate Incoming Webhooks
    • Click Add New Webhook to Workspace
    • Choose a channel for Coolify notifications
    • Copy the webhook URL
  3. Configure in Coolify:

    • Go to NotificationsSlack
    • Paste the webhook URL in the Webhook URL field
    • Save the settings
    • Enable the Slack channel
    • Send a Test notification

Using Slack notifications with Mattermost

Slack webhooks in Coolify are fully compatible with Mattermost.

  1. Create an Incoming Webhook in Mattermost:

    • Go to Product MenuIntegrationsIncoming Webhooks
    • Click Add Incoming Webhook
    • Configure the webhook (name, channel, etc.) and save
    • Copy the generated webhook URL (format: https://your-mattermost-server.com/hooks/xxx-key-xxx)
  2. Configure in Coolify:

    • Go to NotificationsSlack
    • Paste the Mattermost webhook URL in the Webhook URL field
    • Save the settings
    • Enable the Slack channel
    • Send a Test notification

Pushover (Push Notifications)

  1. Get User Key

    • Log in or sign up at Pushover
    • Copy your User Key from the top right of the page
  2. Create an Application

    • Visit Create Application
    • Fill in application details
    • Create the application
    • Copy the API Token/Key from the top left of the page
  3. Configure in Coolify:

    • Go to NotificationsPushover
    • Enter your User Key (from step 1)
    • Enter the API Key from your created application (from step 2)
    • Save the settings
    • Enable the Pushover channel
    • Send a Test notification

::: info Pushover allows you to receive notifications on multiple devices including iOS, Android, and desktop. :::

Gotify

  1. Set up Gotify Server

    • Deploy your own Gotify server or use an existing one
    • Visit Gotify Documentation for installation instructions
    • Note your Gotify server URL (e.g., https://gotify.example.com)
  2. Create an Application

    • Log in to your Gotify server
    • Navigate to Apps in the dashboard
    • Click Create Application
    • Enter an application name (e.g., "Coolify Notifications")
    • Copy the Application Token that is generated
  3. Configure in Coolify:

    • Go to NotificationsGotify
    • Enter your Gotify server URL (e.g., https://gotify.example.com)
    • Paste the Application Token from step 2
    • Save the settings
    • Enable the Gotify channel
    • Send a Test notification

::: info Gotify is a self-hosted, open-source notification server. This gives you complete control over your notification data and infrastructure. You can receive notifications on Android devices using the official Gotify app. :::

Webhook

Webhook notifications allow you to send notifications to any custom endpoint that accepts HTTP requests.

  1. Configure in Coolify:
    • Go to NotificationsWebhook
    • Enter a HTTP or HTTPS URL in the Webhook URL field
    • Save the settings
    • Enable the Webhook channel
    • Send a Test notification

Coolify will send POST requests to your specified endpoint when events occur. You can use this to integrate with custom applications, automation tools, or any service that accepts webhooks.

Notification Events

You can configure which events trigger notifications in your notification settings:

Deployments

  • Deployment Success
  • Deployment Failure
  • Container Status Changes

Backups

  • Backup Success
  • Backup Failure

Scheduled Tasks

  • Scheduled Task Success
  • Scheduled Task Failure

Server

  • Docker Cleanup Success
  • Docker Cleanup Failure
  • Server Disk Usage
  • Server Reachable
  • Server Unreachable
  • Server Patching
  • Traefik Proxy Outdated

::: success Multiple Channels You can configure different events for each notification channel. For example, you can send deployment failure notifications to Email and successes to Slack. :::