HomeServerlessContainersHow to
Add a trigger to a container
Jump toUpdate content

How to add a trigger to a container

Reviewed on 27 April 2023 • Published on 27 April 2023

This page shows you how to configure triggers for your containers. A trigger is an event that invokes a Serverless Container. In a serverless architecture, a container is not running constantly, but is rather activated only when there is an event. A trigger is a mechanism that connects the container to an event source and enables the container to run automatically in response to specific events. The trigger can be an HTTP request, a message from a queue or stream, a CRON schedule etc.

The trigger is configured during the container deployment, and it determines how and when the container will run.

Requirements:
Important:

This feature is currently in beta and does not support calling private containers yet.

Note:

Triggers send messages through a POST request with the message body in the request body.

SQS triggers

An SQS (Simple Queue Service) trigger is a mechanism that connects a container to an SQS queue and invokes the container automatically whenever a message is added to the queue. For each message that is sent to an SQS queue, the SQS trigger reads the message and invokes the associated container with the message as the input parameter. The containerized application can then process the message and perform any required actions, such as updating a database or sending a notification. Currently, SQS queues of the Scaleway Messaging and Queuing product are supported.

The configuration of the queue retention may affect the behavior of the trigger.

  1. Click Containers in the Serverless section of the side menu. The containers page displays.
  2. Click the relevant containers namespace.
  3. Click the name of the container you want to manage. The container overview displays.
  4. Click the Triggers tab. The trigger configuration displays.
  5. Click Create new Trigger. The trigger creation form displays in a pop-up.
  6. Enter a name for your trigger and select the SQS (Scaleway) type. Select the messaging namespace to use from the drop-down name and enter your queue name.
  7. Click Create trigger to launch the trigger creation.

When a message is pushed to the selected queues, the container will be triggered with the message content passed in the event object’s body.

CRON triggers

A CRON trigger is a mechanism for invoking a Serverless Container at a specific time or on a recurring schedule, similar to a traditional cron job on a Linux server.

  1. Click Containers in the Serverless section of the side menu. The containers page displays.
  2. Click the relevant containers namespace.
  3. Click the name of the container you want to manage. The container overview displays.
  4. Click the Triggers tab. The trigger configuration displays.
  5. Click Create new Trigger. The trigger creation form displays in a pop-up.
  6. Enter a name for your trigger and select the CRON type. Enter the cron schedule in UNIX format and paste your JSON arguments in the form.
  7. Click Create trigger to launch the trigger creation.

The container will be invoked at the indicated time.

Note:

Refer to Crontab Guru for more information on CRON schedules.