- Boot Sequin
- Connect to a sample playground database
- Configure RabbitMQ to receive database changes
- See your changes flow in real-time
Boot RabbitMQ
Configure RabbitMQ
- Create an exchange
- Create a queue
- Bind the queue to the exchange
Open RabbitMQ Management UI
- Username: guest
- Password: guest
Create an exchange
- Click “Exchanges” in the top navigation
- Find the “Add a new exchange” accordion and expand it if needed
- Enter:
- Name: sequin
- Type: topic
- Leave other settings as default
- Click “Add exchange”

Create a queue
- Click “Queues and streams” in the top navigation
- Find the “Add a new queue” accordion and expand it if needed
- Enter:
- Name: products
- Leave other settings as default
- Click “Add queue”

Create a binding
- On the “Queues and streams” page, click on your new “products” queue
- Find the “Bindings” section and expand it if needed
- In “Add binding to this queue”, enter:
- From exchange: sequin
- Routing key:
sequin.sequin_playground.public.products.*
- Click “Bind”
sequin.<database_name>.<table_schema>.<table_name>.<action>
Run Sequin
Create directory and start services
- Download sequin-docker-compose.zip.
- Unzip the file.
- Navigate to the unzipped directory and start the services:
Alternative: Download with curl
Alternative: Download with curl
Alternative: Clone the repository
Alternative: Clone the repository
Verify services are running
docker ps:Up).Login
Open the web console

Login with default credentials
- Email:
- Password:
View the playground database
sequin_playground with a sample dataset in the public.products table.Let’s take a look:Navigate to Databases
Select playground database
sequin-playground database:
View contents of the products table
products table. Run the following command:psql command.products table:Create a RabbitMQ Sink
products table to your RabbitMQ exchange:Navigate to Sinks
Select sink type
Note "Source" configuration
sequin-playground database is selected and all schemas and tables are included. Leave these defaults:
Setup a backfill
Inital backfill card, select the public.products table to initate a backfill when the sink is created.
Configure "RabbitMQ Configuration"
- Host: If running locally with Docker, use
host.docker.internal - Port: The port RabbitMQ is listening on (default: 5672)
- Exchange: The exchange name we created earlier (
sequin) - Username and Password: Leave blank
- SSL: Leave disabled

Test the connection
Create the sink
products table. Then, you’ll receive all changes to the products table in real-time.Click “Create Sink” to finish setting up your RabbitMQ sink.See changes flow through RabbitMQ
Messages tab

products table to RabbitMQ.View in RabbitMQ
read events from the initial backfill of the products table:
Make some changes
products table and see them flow through RabbitMQ.In your terminal, run the following command to insert a new row into the products table:Update a product's price
Update a product's price
Change a product's name
Change a product's name
Delete a product
Delete a product
- Set up a complete Postgres change data capture pipeline
- Configured RabbitMQ with an exchange, queue, and binding
- Loaded existing data through a backfill
- Made changes to the
productstable - Verified changes are flowing through RabbitMQ

