Skip to content

Postgres logo

Postgres workspace

Containerized environment to interact, manage and administer PostgreSQL database.

Query, explore, manage, develop, test performance, import annd export data, generate mock data, create backups, manage migrations, generate reports, schedule tasks.

Collage

Why this images

  1. If you need a toolset to interact with PostgreSQL and you don't have time to build it on your own.

  2. To directly access and manage PostgreSQL inside your kubernetes cluster.

  3. A better PostgreSQL docker image for local dev environment. This is PostgreSQL with toolset in a single image.

  4. You want to learn PostgreSQL features.

Start

docker run --name space-1 -d -p 8020-8040:8020-8040 alnoda/postgres-workspace

open localhost:8020 in browser.

Features

PostgreSQL 14 database

PostgreSQL tools:

  • Postgres CLI tools:
    • psql - standard PostgreSQL interactive terminal.
    • pgcli - command line interface for Postgres with auto-completion and syntax highlighting.
    • pspg - data visualizer (pager).
  • Performance and load testing tools:
    • pgmetrics - collect 350+ metrics from a running PostgreSQL server.
    • pgCenter - admin tool for observing and troubleshooting Postgres.
    • pgbench - run benchmark tests on PostgreSQL.
  • Backups and restore tools:
    • pg_dump - generate a file with SQL commands that, when fed back to the server, will recreate the database.
    • pg_dumpall - back up each database in a given cluster, and also preserve cluster-wide data such as role and tablespace definitions.
    • pg_restore - utility for restoring a PostgreSQL database from an archive created by pg_dump.
  • Tools to import/export data to/from Postgres:
    • pgclimb - export data into different data formats, including CSV, JSON, templated HTML & Markdown.
    • pgfutter - import CSV and line delimited JSON into PostgreSQL the easy way.
    • pgloader - very versatile data loading tool for PostgreSQL.
  • Fake data generators and data mocking tools:
    • synth - a tool for generating realistic data.
    • mock-data - generate mock data, tables and databases easily.
  • Database change management toolset:
    • sqitch - database change management application.
    • yuniql - schema versioning and database migration engine.
    • pgmigrate - database migration tool developed by Yandex.
    • migra - find differences in database schemas easily.
  • pg_sample - create database sample while maintaining referential integrity.
  • Postgres explain visualizer - understand Postgres execution plans.
  • DBdesigner - draw ERD diagrams and use it to generate DDL code.
  • Schemaspy - generate extensive HTML database documentation that looks great.
  • tbls- generate documentation (essentially data catalog) from the database
  • pg_flame - flamegraph generator for Postgres explain output.

Tools:

  • Eclipse Theia - open source version of popular Visual Studio Code IDE. Theia is trully open-source, has VS-Code extensions and works in browser. This means it can run inside a docker container on local machine or in cloud. A lot of beautiful color themes and many common plugins are already installed to save time.
  • Terminal - secure browser-based terminal.
  • FileBrowser - manage files and folders inside the workspace, and exchange data between local environment and the workspace
  • Cronicle - task scheduler and runner, with a web based front-end UI. It handles both scheduled, repeating and on-demand jobs, targeting any number of worker servers, with real-time stats and live log viewer.
  • Static File Server - view any static html sites as easy as if you do it on your local machine. Serve static websites easily.
  • Ungit - rings user friendliness to git without sacrificing the versatility of it.
  • MkDocs - create awesome documentation for your project with only markdown.
  • Midnight Commander - Feature rich visual file manager with internal text viewer and editor.
  • Process Monitor - Monitor running process and resource utilization.
  • Quicklaunch UI with getting started tutorial
  • Ubuntu 20.4 with the following CLI apps
    • Zsh, Oh my Zsh
    • Python 3, Pip
    • Node/nodeenv
    • curl, wget, telnet, jq
    • Git: git, git-flow
    • File browsers: mc
    • Text editors: nano, vim, mcedit
    • System monitors: ncdu, htop, glances, vizex
    • Process Control: supervisord
    • Job scheduler: cron
    • Terminal multiplexer: tmux
  • Rclone - save backups to S3
Demo: Postgres workspace

Workspace demo