If you're here, it's probably because you're having trouble using SQL for postgres in Golang to create a database if it doesn't exist. Part of the problem is, postgres doesn't support the CREATE DATABASE dbName IF NOT EXISTS;
idiom for databases. Here's how I'm doing it:
If you're learning how to use postgresql with Docker from tutorials online, you might have trouble connecting to postgresql in your container, perhaps especially if you're on Windows. This might help.
I don't think it's been talked about much so I should share why it's a very bad no good terrible horrible idea to delete a mounted directory inside your Docker container without thinking through it. I'm on Windows 10 but I imagine we might make the same shameful mistake on Unix too.
If you know how pointers work in pointer receivers, go away! Or, read on anyway and please, please tell me if I'm wrong on any point.