Integrate a managed Crunchy Bridge Postgres database to your application and benefit from native autoscaling, automatic HTTPS (SSL), auto-healing, and global load-balancing across our edge network with zero configuration.
Crunchy Bridge
This guide explains how to connect a Crunchy Bridge PostgreSQL database to an application running on Koyeb. To successfully follow this documentation, you will need to have:
The application that connects to the Crunchy Bridge PostgreSQL database uses Prisma as an ORM. Prisma is an open-source ORM. We use it to synchronize our database schema with our Prisma schema.
If you already have a freshly created Crunchy Bridge Postgres database running and want to quickly preview how to connect your database to an application running on Koyeb, use the Deploy to Koyeb button below.
Make sure to replace the DATABASE_URL
environment variable with the connection string of your Crunchy Bridge Postgres database.
To create a Crunchy Bridge PostgreSQL database,
sign into your Crunchy Bridge account
On the Crunchy Bridge control panel, start by clicking the Create Cluster button to provision a cluster and access the database creation page.
postgres-koyeb
When you are done configuring your database, click the Create Cluster button. Your cluster will be provisioned.
On the Crunchy Bridge control panel, click on the Connection tab to retrieve the connection string to connect the database.
By default, three Roles are created to connect your database with different
privileges. You can learn more about these roles and permissions in the
Crunchy Bridge’s User Management documentation
For this guide, we will use the application role to connect the database
which has standard permissions. Select the URL
format and copy it.
The connection string should be similar to the following:
postgres://application:<password>@<host>:<port>/postgres
Save it in a safe place, we will need it in the next step to connect our application to the database.
You can deploy on Koyeb using the control panel or via the Koyeb CLI.
To deploy the example application using the
control panel
github.com/koyeb/example-express-prisma
as the GitHub repository to
deploy and keep the default branch main
npm run postgres:init
as the Build commandDATABASE_URL
environment variable to indicate the application how to
connect to the Postgres database. Give the environment variable a name,
DATABASE_URL
and enter the connection string from earlier as the
valueexpress-crunchy-bridge
Koyeb is now building the application. Once the build has finished, you will be able
to access your application running on Koyeb by clicking the URL ending with
.koyeb.app
.
The example application exposes a /planets
endpoint that you can use to list
planets from the database. Once your deployment is live, you should see the
following results when navigating to https://<YOUR_APP_URL>.koyeb.app/planets
:
[ { "id": 1, "name": "Mercury" }, { "id": 2, "name": "Venus" }, { "id": 3, "name": "Mars" } ]
To deploy the example application using the Koyeb CLI, run the following command in your terminal:
koyeb app init express-crunchy-bridge \ --git github.com/koyeb/example-express-prisma \ --git-branch main \ --git-build-command "npm run postgres:init" \ --ports 8080:http \ --routes /:8080 \ --env PORT=8080 \ --env DATABASE_URL="postgres://application:<password>@<host>:<port>/postgres"
Make sure to replace password
, host
, and port
with your own.
Access deployment logs
To track the app deployment and visualize build logs, execute the following command:
koyeb service logs express-crunchy-bridge/express-crunchy-bridge -t build
Access your app
Once the deployment of your application has finished, you can retrieve the public domain to access your application by running the following command:
$ koyeb app get express-crunchy-bridge ID NAME DOMAINS CREATED AT ec6a4311 express-crunchy-bridge ["express-crunchy-bridge-ed.koyeb.app"] 4 Nov 22 16:16 UTC
The example application exposes a /planets
endpoint that you can use to list
planets from the database. Once your deployment is live, you should see the
following results when navigating to https://<YOUR_APP_URL>.koyeb.app/planets
:
[ { "id": 1, "name": "Mercury" }, { "id": 2, "name": "Venus" }, { "id": 3, "name": "Mars" } ]
To delete the example application and the Crunchy Bridge PostgreSQL database and avoid incurring any charges, follow these steps: