A helper for Postgres + Docker that works for free
Python Makefile
Clone or download
crccheck Urldecode passwords (#22)
For example, if a password was `!mysecure:password#`, you'd have to encode it `%21mysecure%3Apassword%23` to get it to parse right (otherwise it'd think it's a port), but then you'd be passing the wrong password in.

fixes #19
Latest commit f6ad1e9 Mar 24, 2018



A helper for Postgres + Docker that works for free



A wrapper that wraps a postgres command with connection arguments according to the DATABASE_URL environment variable.

I originally made this because manually typing the connection args to pqsl, createdb, etc. became tiring. "Ain't nobody got time for dat".

Let's say your environment is like this:

$ env | grep DATABASE_URL

You could type:

$ createdb -U docker -h elevators
createdb elevators

Or with PostDoc:

$ phd createdb
createdb -U docker -h elevators
createdb elevators

Docker doesn't really have anything to do with this. But now that I've been using Docker to manage my Postgres databases, I can't use defaults anymore.

But wait, there's more!

You can do MySQL stuff too:

$ phd mysql
mysql -u docker -h --database elevators
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

$ phd mysqlcheck --auto-repair
mysqlcheck -u docker -h elevators --auto-repair

If your database url isn't DATABASE_URL, you can connect to it by making it the first argument:

$ export FATTYBASE_URL=postgres://fatty@fat/phat
$ phd FATTYBASE_URL psql
psql -U fatty -h fat phat


Install with pip:

pip install postdoc


Add the flag --postdoc-dry-run to just print the command.

Add the flag --postdoc-quiet to execute the command without printing the debugging line.


alias dphd="phd --postdoc-dry-run"
alias qphd="phd --postdoc-quiet"