Skip to main content

đŸŗ Docker QuickStart

Let's discover PGMate in less than 5 minutes...
But if you really are in a rush, just click here and run it in GitPod.io:

Open in Gitpod

You can easily run PGMate Demo Project in the Cloud for free, and quickly get to a result like:

PGMate Table View

Getting Started​

PGMate offers multiple ways to get started, tailored to your preferences:

Choose the option that works best for you and start exploring!

In the Cloud​

Run PGMate on GitPod.io​

Click on this button and enjoy the automation:

Open in Gitpod

Run PGMate on GitHub Codespace​

  1. Open the Demo Project on GitHub
  2. Click on: Code
  3. Click on: Create codespace on main
  4. Take a cup of coffee...

Run PGMate as GitHub Codespace

In Your Development Machine​

Standalone Container​

This command will run the experimental standalone container that ships both PGMate and a Postgres 16 server within the same container:

docker run -p 8080:8080 pgmate/pgmate:latest-full
info

This is the minimal config option and works well in any OS that supports Docker.
Yes, also Windows.

Quick Bash​

  1. open your favourite Terminal App
  2. paste this command
curl -sL https://bit.ly/3ZAx19E | bash -s -- run
info

You need Docker and a Linux environment (Mac also works fine)

Clone the Demo Project​

  1. open your favourite Terminal App
  2. git clone https://github.com/pgmate/demo pgmate
  3. cd pgmate
  4. docker compose up
info

You need Docker and a Linux environment (Mac also works fine)

Login​

The Demo Project ships with pgmate as default password:

PGMate Login

info

You can change it to your favourite password by editing PGMATE_ADMIN_SECRET env variable.

🧑‍đŸ’ģ If you are running if from the QuickBash command, try:

curl -sL https://bit.ly/3ZAx19E | bash -s \
-- run \
--secret=foobar

Connections Manger​

PGMate lets you define multiple connections:

List available connections

PGMate requires a default connection string provided as environmental variable PGSTRING=postgres://postgres:xxx@postgres:5432/postgres.

The Demo Project ships with a local Postgres container running alongside PGMate.

👉 The default connection is hidden in the Connections Manager and can not be modified via UI.

info

You can change the default db by editing the PGSTRING env variable

🧑‍đŸ’ģ If you are running if from the QuickBash command, try:

curl -sL https://bit.ly/3ZAx19E | bash -s \
-- run \
--pgstring=postgres://....
warning

All the connections that you add are stored in the default db and ARE ENCRYPTED WITH A DEFAULT KEY.
đŸ’ģ This is ok for local instances, but it should always be seriously evaluated.

🌩ī¸ If you are running PGMate in a shared instance, we recommend you to implement the PGMATE_ENCRYPTION_KEY environmental variable with a custom encryption key that you can easily generate:

openssl rand -hex 32

Explore your Database​

[[ coming soon... ]]

Move across different Views​

[[ coming soon... ]]

Quick Connection Switch​

[[ coming soon... ]]