This section describes the installation of EdgeDB using a packaged distribution.

EdgeDB packages are available for common Linux distributions and macOS in the official package repository.

Packages are available for RHEL/CentOS 7 and later.

Step 1. Add the EdgeDB package repository:

sudo tee <<'EOF' /etc/yum.repos.d/edgedb.repo

Step 2. Install the EdgeDB package:

sudo yum install edgedb-1-alpha1

Step 1. Import the EdgeDB packaging key:

curl \
    | sudo apt-key add -

Step 2. Add the EdgeDB package repository:

dist=$(awk -F"=" '/VERSION_CODENAME=/ {print $2}' /etc/os-release)
[ -n "${dist}" ] || \
    dist=$(awk -F"[)(]+" '/VERSION=/ {print $2}' /etc/os-release)
echo deb ${dist} main \
    | sudo tee /etc/apt/sources.list.d/edgedb.list

Step 3. Install the EdgeDB package:

apt-get update && apt-get install edgedb-1-alpha1

You can download and install the macOS EdgeDB package using the normal package installation GUI.

It is also possible to install the package from the command line:

sudo installer -pkg /path/to/edgedb-1-alpha1.pkg -target /

Step 1. Pull the EdgeDB server Docker image:

docker pull edgedb/edgedb

Step 2. Run the container (replace <datadir> with the directory you want to persist the data in):

docker run -it --rm -p 5656:5656 -p 8888:8888 \
            -p 8889:8889 --name=edgedb-server \
            -v <datadir>:/var/lib/edgedb/data \

When configuring extra ports, make sure to expose them on the host by adding a corresponding -p argument to the docker run command. The command above exposes the default ports used by EdgeQL over binary protocol (5656), EdgeQL over HTTP (8889), and GraphQL over HTTP (8888).

To run the EdgeDB shell using Docker, start it another container, linking to the server container:

docker run --link=edgedb-server --rm -it \
    edgedb/edgedb:latest \
    edgedb -u edgedb -h edgedb-server