Gel

Gel is a graph-relational database designed to address major ergonomic limitations of SQL and the relational paradigm, without sacrificing type safety or performance.

This one-click button provisions a Gel instance and an underlying Postgres cluster. Spend less time administering databases and more time building your app. Read the Quickstart to hit the ground running, or jump into the docs.

Software Included

Package Version License
Gel 6.1 Apache 2.0
PostgreSQL 17.2 PostgreSQL

Creating an App using the Control Panel

Click the Deploy to DigitalOcean button to create a Droplet based on this 1-Click App. If you aren’t logged in, this link will prompt you to log in with your DigitalOcean account.

Deploy to DO

Creating an App using the API

In addition to creating a Droplet from the Gel 1-Click App using the control panel, you can also use the DigitalOcean API. As an example, to create a 4GB Gel Droplet in the SFO2 region, you can use the following curl command. You need to either save your API access token) to an environment variable or substitute it in the command below.

curl -X POST -H 'Content-Type: application/json' \
         -H 'Authorization: Bearer '$TOKEN'' -d \
        '{"name":"choose_a_name","region":"sfo2","size":"s-2vcpu-4gb","image": "edgedb-gel"}' \
        "https://api.digitalocean.com/v2/droplets"

Getting Started After Deploying Gel

Prerequisites

Method

Once deployed you will have a Gel instance running. The default admin

password is gelpassword. We strongly recommend that you change the

password.

To change the password run the following.

read -rsp "Password: " PASSWORD
printf gelpassword | gel query \
  --host your_droplet_public_ipv4 \
  --password-from-stdin \
  --tls-security insecure \
  "alter role admin set password := '${PASSWORD}'"

Create a local link to the new Gel instance:

printf $PASSWORD | gel instance link \
  --password-from-stdin \
  --trust-tls-cert \
  --host your_droplet_public_ipv4 \
  --non-interactive \
  digitalocean

You can now use the Gel instance deployed on DigitalOcean as

digitalocean, for example:

gel -I digitalocean
In this article...